[INFO] fetching crate tokio-rpc 0.1.1...
[INFO] testing tokio-rpc-0.1.1 against 1.99.0-beta.8 for beta-1.100-2
[INFO] extracting crate tokio-rpc 0.1.1 into /workspace/builds/worker-4-tc1/source
[INFO] started tweaking crates.io crate tokio-rpc 0.1.1
[INFO] finished tweaking crates.io crate tokio-rpc 0.1.1
[INFO] tweaked toml for crates.io crate tokio-rpc 0.1.1 written to /workspace/builds/worker-4-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate tokio-rpc 0.1.1 on toolchain 1.99.0-beta.8
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.99.0-beta.8" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.99.0-beta.8" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 72 packages to highest compatible versions
[INFO] [stderr]       Adding bytes v0.4.12 (available: v1.12.1)
[INFO] [stderr]       Adding futures v0.1.31 (available: v0.3.34)
[INFO] [stderr]       Adding protobuf v1.7.5 (available: v3.7.2)
[INFO] [stderr]       Adding tokio-timer v0.1.2 (available: v0.2.13)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.99.0-beta.8" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: Cargo.toml: `package.edition` is unspecified, defaulting to `2015` while the latest is `2024`
[INFO] [stderr] warning: `tokio-rpc` (manifest) generated 1 warning
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded tokio-timer v0.1.2
[INFO] [stderr]   Downloaded tokio-service v0.1.0
[INFO] [stderr]   Downloaded slab v0.3.0
[INFO] [stderr]   Downloaded tokio-proto v0.1.1
[INFO] [stderr]   Downloaded scoped-tls v0.1.2
[INFO] [stderr]   Downloaded take v0.1.0
[INFO] [stderr]   Downloaded smallvec v0.2.1
[INFO] [stderr]   Downloaded tokio-core v0.1.18
[INFO] [stderr]   Downloaded log v0.3.9
[INFO] [stderr]   Downloaded protobuf v1.7.5
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,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" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3111399a4047eeb3a02b7a90e478d715f38a8c6669b5c4b49d30a17385265909" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] aa18bb6d371e4e8cf34dab24babf33b40b88a6f86e345951727aeb6dd7d8f650
[INFO] running `Command { std: "docker" "start" "aa18bb6d371e4e8cf34dab24babf33b40b88a6f86e345951727aeb6dd7d8f650", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "aa18bb6d371e4e8cf34dab24babf33b40b88a6f86e345951727aeb6dd7d8f650", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "aa18bb6d371e4e8cf34dab24babf33b40b88a6f86e345951727aeb6dd7d8f650" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "aa18bb6d371e4e8cf34dab24babf33b40b88a6f86e345951727aeb6dd7d8f650", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "aa18bb6d371e4e8cf34dab24babf33b40b88a6f86e345951727aeb6dd7d8f650" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr] warning: Cargo.toml: `package.edition` is unspecified, defaulting to `2015` while the latest is `2024`
[INFO] [stderr] warning: `tokio-rpc` (manifest) generated 1 warning
[INFO] [stderr]    Compiling crossbeam-utils v0.7.2
[INFO] [stderr]    Compiling futures v0.1.31
[INFO] [stderr]    Compiling maybe-uninit v2.0.0
[INFO] [stderr]    Compiling semver-parser v0.7.0
[INFO] [stderr]    Compiling log v0.4.34
[INFO] [stderr]    Compiling iovec v0.1.4
[INFO] [stderr]    Compiling net2 v0.2.39
[INFO] [stderr]    Compiling memoffset v0.5.6
[INFO] [stderr]    Compiling crossbeam-epoch v0.8.2
[INFO] [stderr]    Compiling rand v0.4.6
[INFO] [stderr]    Compiling scoped-tls v0.1.2
[INFO] [stderr]    Compiling lock_api v0.3.4
[INFO] [stderr]    Compiling slab v0.3.0
[INFO] [stderr]    Compiling take v0.1.0
[INFO] [stderr]    Compiling smallvec v0.2.1
[INFO] [stderr]    Compiling log v0.3.9
[INFO] [stderr]    Compiling semver v0.9.0
[INFO] [stderr]    Compiling bytes v0.4.12
[INFO] [stderr]    Compiling smallvec v0.6.14
[INFO] [stderr]    Compiling rustc_version v0.2.3
[INFO] [stderr]    Compiling mio v0.6.23
[INFO] [stderr]    Compiling parking_lot_core v0.6.3
[INFO] [stderr]    Compiling parking_lot v0.9.0
[INFO] [stderr]    Compiling rand v0.3.23
[INFO] [stderr]    Compiling crossbeam-queue v0.2.3
[INFO] [stderr]    Compiling crossbeam-deque v0.7.4
[INFO] [stderr]    Compiling tokio-executor v0.1.10
[INFO] [stderr]    Compiling tokio-io v0.1.13
[INFO] [stderr]    Compiling tokio-sync v0.1.8
[INFO] [stderr]    Compiling tokio-service v0.1.0
[INFO] [stderr]    Compiling tokio-timer v0.1.2
[INFO] [stderr]    Compiling mio-uds v0.6.8
[INFO] [stderr]    Compiling tokio-threadpool v0.1.18
[INFO] [stderr]    Compiling tokio-current-thread v0.1.7
[INFO] [stderr]    Compiling tokio-timer v0.2.13
[INFO] [stderr]    Compiling tokio-reactor v0.1.12
[INFO] [stderr]    Compiling tokio-codec v0.1.2
[INFO] [stderr]    Compiling tokio-fs v0.1.7
[INFO] [stderr]    Compiling tokio-udp v0.1.6
[INFO] [stderr]    Compiling tokio-uds v0.2.7
[INFO] [stderr]    Compiling tokio-tcp v0.1.4
[INFO] [stderr]    Compiling tokio v0.1.22
[INFO] [stderr]    Compiling tokio-core v0.1.18
[INFO] [stderr]    Compiling tokio-proto v0.1.1
[INFO] [stderr]    Compiling tokio-rpc v0.1.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `str`
[INFO] [stdout]  --> src/rpc.rs:5:15
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::{io, str};
[INFO] [stdout]   |               ^^^
[INFO] [stdout]   |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]  --> src/rpc.rs:3:9
[INFO] [stdout]   |
[INFO] [stdout] 3 | #![deny(warnings, missing_docs)]
[INFO] [stdout]   |         ^^^^^^^^
[INFO] [stdout]   = note: `#[warn(unused_imports)]` implied by `#[warn(warnings)]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/rpc.rs:73:21
[INFO] [stdout]    |
[INFO] [stdout] 73 |         let inner = try!(self.inner.new_service());
[INFO] [stdout]    |                     ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` implied by `#[warn(warnings)]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated struct `tokio_io::codec::Framed`: Moved to tokio-codec
[INFO] [stdout]   --> src/rpc.rs:10:41
[INFO] [stdout]    |
[INFO] [stdout] 10 | use tokio_io::codec::{Encoder, Decoder, Framed};
[INFO] [stdout]    |                                         ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated struct `tokio_io::codec::Framed`: Moved to tokio-codec
[INFO] [stdout]    --> src/rpc.rs:168:22
[INFO] [stdout]     |
[INFO] [stdout] 168 |     type Transport = Framed<T, RPCCodec>;
[INFO] [stdout]     |                      ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated struct `tokio_io::codec::Framed`: Moved to tokio-codec
[INFO] [stdout]    --> src/rpc.rs:180:22
[INFO] [stdout]     |
[INFO] [stdout] 180 |     type Transport = Framed<T, RPCCodec>;
[INFO] [stdout]     |                      ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/rpc.rs:56:23
[INFO] [stdout]    |
[INFO] [stdout] 56 |     type Future = Box<Future<Item = Self::Response, Error = Self::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/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` implied by `#[warn(warnings)]`
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 56 |     type Future = Box<dyn Future<Item = Self::Response, Error = Self::Error>>;
[INFO] [stdout]    |                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/rpc.rs:99:23
[INFO] [stdout]    |
[INFO] [stdout] 99 |     type Future = Box<Future<Item = Self::Response, Error = Self::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/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] 99 |     type Future = Box<dyn Future<Item = Self::Response, Error = Self::Error>>;
[INFO] [stdout]    |                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/rpc.rs:83:27
[INFO] [stdout]    |
[INFO] [stdout] 83 |                    -> Box<Future<Item = Client, Error = io::Error>> {
[INFO] [stdout]    |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/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] 83 |                    -> Box<dyn Future<Item = Client, Error = io::Error>> {
[INFO] [stdout]    |                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `bytes::BufMut::put_u64`: use put_u64_be or put_u64_le
[INFO] [stdout]    --> src/rpc.rs:157:13
[INFO] [stdout]     |
[INFO] [stdout] 157 |         buf.put_u64::<BigEndian>(id | MAGIC_VER_VAL);
[INFO] [stdout]     |             ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `bytes::BufMut::put_u32`: use put_u32_be or put_u32_le
[INFO] [stdout]    --> src/rpc.rs:158:13
[INFO] [stdout]     |
[INFO] [stdout] 158 |         buf.put_u32::<BigEndian>(payload_len as u32);
[INFO] [stdout]     |             ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `tokio_io::AsyncRead::framed`: Use tokio_codec::Decoder::framed instead
[INFO] [stdout]    --> src/rpc.rs:172:15
[INFO] [stdout]     |
[INFO] [stdout] 172 |         Ok(io.framed(RPCCodec))
[INFO] [stdout]     |               ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `tokio_io::AsyncRead::framed`: Use tokio_codec::Decoder::framed instead
[INFO] [stdout]    --> src/rpc.rs:184:15
[INFO] [stdout]     |
[INFO] [stdout] 184 |         Ok(io.framed(RPCCodec))
[INFO] [stdout]     |               ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 7.43s
[INFO] running `Command { std: "docker" "inspect" "aa18bb6d371e4e8cf34dab24babf33b40b88a6f86e345951727aeb6dd7d8f650", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "aa18bb6d371e4e8cf34dab24babf33b40b88a6f86e345951727aeb6dd7d8f650" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr] warning: Cargo.toml: `package.edition` is unspecified, defaulting to `2015` while the latest is `2024`
[INFO] [stderr] warning: `tokio-rpc` (manifest) generated 1 warning
[INFO] [stderr]    Compiling protobuf v1.7.5
[INFO] [stdout] warning: unused import: `str`
[INFO] [stdout]  --> src/rpc.rs:5:15
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::{io, str};
[INFO] [stdout]   |               ^^^
[INFO] [stdout]   |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]  --> src/rpc.rs:3:9
[INFO] [stdout]   |
[INFO] [stdout] 3 | #![deny(warnings, missing_docs)]
[INFO] [stdout]   |         ^^^^^^^^
[INFO] [stdout]   = note: `#[warn(unused_imports)]` implied by `#[warn(warnings)]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/rpc.rs:73:21
[INFO] [stdout]    |
[INFO] [stdout] 73 |         let inner = try!(self.inner.new_service());
[INFO] [stdout]    |                     ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` implied by `#[warn(warnings)]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated struct `tokio_io::codec::Framed`: Moved to tokio-codec
[INFO] [stdout]   --> src/rpc.rs:10:41
[INFO] [stdout]    |
[INFO] [stdout] 10 | use tokio_io::codec::{Encoder, Decoder, Framed};
[INFO] [stdout]    |                                         ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated struct `tokio_io::codec::Framed`: Moved to tokio-codec
[INFO] [stdout]    --> src/rpc.rs:168:22
[INFO] [stdout]     |
[INFO] [stdout] 168 |     type Transport = Framed<T, RPCCodec>;
[INFO] [stdout]     |                      ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated struct `tokio_io::codec::Framed`: Moved to tokio-codec
[INFO] [stdout]    --> src/rpc.rs:180:22
[INFO] [stdout]     |
[INFO] [stdout] 180 |     type Transport = Framed<T, RPCCodec>;
[INFO] [stdout]     |                      ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/rpc.rs:56:23
[INFO] [stdout]    |
[INFO] [stdout] 56 |     type Future = Box<Future<Item = Self::Response, Error = Self::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/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` implied by `#[warn(warnings)]`
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 56 |     type Future = Box<dyn Future<Item = Self::Response, Error = Self::Error>>;
[INFO] [stdout]    |                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/rpc.rs:99:23
[INFO] [stdout]    |
[INFO] [stdout] 99 |     type Future = Box<Future<Item = Self::Response, Error = Self::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/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] 99 |     type Future = Box<dyn Future<Item = Self::Response, Error = Self::Error>>;
[INFO] [stdout]    |                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/rpc.rs:83:27
[INFO] [stdout]    |
[INFO] [stdout] 83 |                    -> Box<Future<Item = Client, Error = io::Error>> {
[INFO] [stdout]    |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/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] 83 |                    -> Box<dyn Future<Item = Client, Error = io::Error>> {
[INFO] [stdout]    |                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `bytes::BufMut::put_u64`: use put_u64_be or put_u64_le
[INFO] [stdout]    --> src/rpc.rs:157:13
[INFO] [stdout]     |
[INFO] [stdout] 157 |         buf.put_u64::<BigEndian>(id | MAGIC_VER_VAL);
[INFO] [stdout]     |             ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `bytes::BufMut::put_u32`: use put_u32_be or put_u32_le
[INFO] [stdout]    --> src/rpc.rs:158:13
[INFO] [stdout]     |
[INFO] [stdout] 158 |         buf.put_u32::<BigEndian>(payload_len as u32);
[INFO] [stdout]     |             ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `tokio_io::AsyncRead::framed`: Use tokio_codec::Decoder::framed instead
[INFO] [stdout]    --> src/rpc.rs:172:15
[INFO] [stdout]     |
[INFO] [stdout] 172 |         Ok(io.framed(RPCCodec))
[INFO] [stdout]     |               ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `tokio_io::AsyncRead::framed`: Use tokio_codec::Decoder::framed instead
[INFO] [stdout]    --> src/rpc.rs:184:15
[INFO] [stdout]     |
[INFO] [stdout] 184 |         Ok(io.framed(RPCCodec))
[INFO] [stdout]     |               ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling tokio-rpc v0.1.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `str`
[INFO] [stdout]  --> src/rpc.rs:5:15
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::{io, str};
[INFO] [stdout]   |               ^^^
[INFO] [stdout]   |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]  --> src/rpc.rs:3:9
[INFO] [stdout]   |
[INFO] [stdout] 3 | #![deny(warnings, missing_docs)]
[INFO] [stdout]   |         ^^^^^^^^
[INFO] [stdout]   = note: `#[warn(unused_imports)]` implied by `#[warn(warnings)]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/rpc.rs:73:21
[INFO] [stdout]    |
[INFO] [stdout] 73 |         let inner = try!(self.inner.new_service());
[INFO] [stdout]    |                     ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` implied by `#[warn(warnings)]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: lint `box_pointers` has been removed: it does not detect other kinds of allocations, and existed only for historical reasons
[INFO] [stdout]   --> examples/rpcpb/mod.rs:10:10
[INFO] [stdout]    |
[INFO] [stdout] 10 | #![allow(box_pointers)]
[INFO] [stdout]    |          ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(renamed_and_removed_lints)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated struct `tokio_io::codec::Framed`: Moved to tokio-codec
[INFO] [stdout]   --> src/rpc.rs:10:41
[INFO] [stdout]    |
[INFO] [stdout] 10 | use tokio_io::codec::{Encoder, Decoder, Framed};
[INFO] [stdout]    |                                         ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated struct `tokio_io::codec::Framed`: Moved to tokio-codec
[INFO] [stdout]    --> src/rpc.rs:168:22
[INFO] [stdout]     |
[INFO] [stdout] 168 |     type Transport = Framed<T, RPCCodec>;
[INFO] [stdout]     |                      ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated struct `tokio_io::codec::Framed`: Moved to tokio-codec
[INFO] [stdout]    --> src/rpc.rs:180:22
[INFO] [stdout]     |
[INFO] [stdout] 180 |     type Transport = Framed<T, RPCCodec>;
[INFO] [stdout]     |                      ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/rpc.rs:56:23
[INFO] [stdout]    |
[INFO] [stdout] 56 |     type Future = Box<Future<Item = Self::Response, Error = Self::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/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` implied by `#[warn(warnings)]`
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 56 |     type Future = Box<dyn Future<Item = Self::Response, Error = Self::Error>>;
[INFO] [stdout]    |                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/rpc.rs:99:23
[INFO] [stdout]    |
[INFO] [stdout] 99 |     type Future = Box<Future<Item = Self::Response, Error = Self::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/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] 99 |     type Future = Box<dyn Future<Item = Self::Response, Error = Self::Error>>;
[INFO] [stdout]    |                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/rpc.rs:83:27
[INFO] [stdout]    |
[INFO] [stdout] 83 |                    -> Box<Future<Item = Client, Error = io::Error>> {
[INFO] [stdout]    |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/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] 83 |                    -> Box<dyn Future<Item = Client, Error = io::Error>> {
[INFO] [stdout]    |                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> examples/rpcpb/mod.rs:143:26
[INFO] [stdout]     |
[INFO] [stdout] 143 |     fn as_any(&self) -> &::std::any::Any {
[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/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 143 |     fn as_any(&self) -> &dyn (::std::any::Any) {
[INFO] [stdout]     |                          +++++               +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> examples/rpcpb/mod.rs:146:38
[INFO] [stdout]     |
[INFO] [stdout] 146 |     fn as_any_mut(&mut self) -> &mut ::std::any::Any {
[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/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] 146 |     fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
[INFO] [stdout]     |                                      +++++               +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> examples/rpcpb/mod.rs:149:55
[INFO] [stdout]     |
[INFO] [stdout] 149 |     fn into_any(self: Box<Self>) -> ::std::boxed::Box<::std::any::Any> {
[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/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] 149 |     fn into_any(self: Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
[INFO] [stdout]     |                                                       +++++               +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> examples/rpcpb/mod.rs:374:26
[INFO] [stdout]     |
[INFO] [stdout] 374 |     fn as_any(&self) -> &::std::any::Any {
[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/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] 374 |     fn as_any(&self) -> &dyn (::std::any::Any) {
[INFO] [stdout]     |                          +++++               +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> examples/rpcpb/mod.rs:377:38
[INFO] [stdout]     |
[INFO] [stdout] 377 |     fn as_any_mut(&mut self) -> &mut ::std::any::Any {
[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/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] 377 |     fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
[INFO] [stdout]     |                                      +++++               +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> examples/rpcpb/mod.rs:380:55
[INFO] [stdout]     |
[INFO] [stdout] 380 |     fn into_any(self: Box<Self>) -> ::std::boxed::Box<::std::any::Any> {
[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/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] 380 |     fn into_any(self: Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
[INFO] [stdout]     |                                                       +++++               +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> examples/rpcpb/mod.rs:609:26
[INFO] [stdout]     |
[INFO] [stdout] 609 |     fn as_any(&self) -> &::std::any::Any {
[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/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] 609 |     fn as_any(&self) -> &dyn (::std::any::Any) {
[INFO] [stdout]     |                          +++++               +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> examples/rpcpb/mod.rs:612:38
[INFO] [stdout]     |
[INFO] [stdout] 612 |     fn as_any_mut(&mut self) -> &mut ::std::any::Any {
[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/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] 612 |     fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
[INFO] [stdout]     |                                      +++++               +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> examples/rpcpb/mod.rs:615:55
[INFO] [stdout]     |
[INFO] [stdout] 615 |     fn into_any(self: Box<Self>) -> ::std::boxed::Box<::std::any::Any> {
[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/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] 615 |     fn into_any(self: Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
[INFO] [stdout]     |                                                       +++++               +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> examples/rpcpb/mod.rs:837:26
[INFO] [stdout]     |
[INFO] [stdout] 837 |     fn as_any(&self) -> &::std::any::Any {
[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/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] 837 |     fn as_any(&self) -> &dyn (::std::any::Any) {
[INFO] [stdout]     |                          +++++               +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> examples/rpcpb/mod.rs:840:38
[INFO] [stdout]     |
[INFO] [stdout] 840 |     fn as_any_mut(&mut self) -> &mut ::std::any::Any {
[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/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] 840 |     fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
[INFO] [stdout]     |                                      +++++               +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> examples/rpcpb/mod.rs:843:55
[INFO] [stdout]     |
[INFO] [stdout] 843 |     fn into_any(self: Box<Self>) -> ::std::boxed::Box<::std::any::Any> {
[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/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] 843 |     fn into_any(self: Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
[INFO] [stdout]     |                                                       +++++               +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]     --> examples/rpcpb/mod.rs:1028:26
[INFO] [stdout]      |
[INFO] [stdout] 1028 |     fn as_any(&self) -> &::std::any::Any {
[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/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] 1028 |     fn as_any(&self) -> &dyn (::std::any::Any) {
[INFO] [stdout]      |                          +++++               +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]     --> examples/rpcpb/mod.rs:1031:38
[INFO] [stdout]      |
[INFO] [stdout] 1031 |     fn as_any_mut(&mut self) -> &mut ::std::any::Any {
[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/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] 1031 |     fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
[INFO] [stdout]      |                                      +++++               +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]     --> examples/rpcpb/mod.rs:1034:55
[INFO] [stdout]      |
[INFO] [stdout] 1034 |     fn into_any(self: Box<Self>) -> ::std::boxed::Box<::std::any::Any> {
[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/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] 1034 |     fn into_any(self: Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
[INFO] [stdout]      |                                                       +++++               +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]     --> examples/rpcpb/mod.rs:1213:26
[INFO] [stdout]      |
[INFO] [stdout] 1213 |     fn as_any(&self) -> &::std::any::Any {
[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/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] 1213 |     fn as_any(&self) -> &dyn (::std::any::Any) {
[INFO] [stdout]      |                          +++++               +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]     --> examples/rpcpb/mod.rs:1216:38
[INFO] [stdout]      |
[INFO] [stdout] 1216 |     fn as_any_mut(&mut self) -> &mut ::std::any::Any {
[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/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] 1216 |     fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
[INFO] [stdout]      |                                      +++++               +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]     --> examples/rpcpb/mod.rs:1219:55
[INFO] [stdout]      |
[INFO] [stdout] 1219 |     fn into_any(self: Box<Self>) -> ::std::boxed::Box<::std::any::Any> {
[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/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] 1219 |     fn into_any(self: Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
[INFO] [stdout]      |                                                       +++++               +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `bytes::BufMut::put_u64`: use put_u64_be or put_u64_le
[INFO] [stdout]    --> src/rpc.rs:157:13
[INFO] [stdout]     |
[INFO] [stdout] 157 |         buf.put_u64::<BigEndian>(id | MAGIC_VER_VAL);
[INFO] [stdout]     |             ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `bytes::BufMut::put_u32`: use put_u32_be or put_u32_le
[INFO] [stdout]    --> src/rpc.rs:158:13
[INFO] [stdout]     |
[INFO] [stdout] 158 |         buf.put_u32::<BigEndian>(payload_len as u32);
[INFO] [stdout]     |             ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]     --> examples/rpcpb/mod.rs:1615:26
[INFO] [stdout]      |
[INFO] [stdout] 1615 |     fn as_any(&self) -> &::std::any::Any {
[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/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] 1615 |     fn as_any(&self) -> &dyn (::std::any::Any) {
[INFO] [stdout]      |                          +++++               +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `tokio_io::AsyncRead::framed`: Use tokio_codec::Decoder::framed instead
[INFO] [stdout]    --> src/rpc.rs:172:15
[INFO] [stdout]     |
[INFO] [stdout] 172 |         Ok(io.framed(RPCCodec))
[INFO] [stdout]     |               ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `tokio_io::AsyncRead::framed`: Use tokio_codec::Decoder::framed instead
[INFO] [stdout]    --> src/rpc.rs:184:15
[INFO] [stdout]     |
[INFO] [stdout] 184 |         Ok(io.framed(RPCCodec))
[INFO] [stdout]     |               ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]     --> examples/rpcpb/mod.rs:1618:38
[INFO] [stdout]      |
[INFO] [stdout] 1618 |     fn as_any_mut(&mut self) -> &mut ::std::any::Any {
[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/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] 1618 |     fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
[INFO] [stdout]      |                                      +++++               +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]     --> examples/rpcpb/mod.rs:1621:55
[INFO] [stdout]      |
[INFO] [stdout] 1621 |     fn into_any(self: Box<Self>) -> ::std::boxed::Box<::std::any::Any> {
[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/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] 1621 |     fn into_any(self: Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
[INFO] [stdout]      |                                                       +++++               +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]     --> examples/rpcpb/mod.rs:2033:26
[INFO] [stdout]      |
[INFO] [stdout] 2033 |     fn as_any(&self) -> &::std::any::Any {
[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/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] 2033 |     fn as_any(&self) -> &dyn (::std::any::Any) {
[INFO] [stdout]      |                          +++++               +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]     --> examples/rpcpb/mod.rs:2036:38
[INFO] [stdout]      |
[INFO] [stdout] 2036 |     fn as_any_mut(&mut self) -> &mut ::std::any::Any {
[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/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] 2036 |     fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
[INFO] [stdout]      |                                      +++++               +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]     --> examples/rpcpb/mod.rs:2039:55
[INFO] [stdout]      |
[INFO] [stdout] 2039 |     fn into_any(self: Box<Self>) -> ::std::boxed::Box<::std::any::Any> {
[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/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] 2039 |     fn into_any(self: Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
[INFO] [stdout]      |                                                       +++++               +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> examples/protobuf_rpc.rs:22:23
[INFO] [stdout]    |
[INFO] [stdout] 22 |     type Future = Box<Future<Item = Self::Response, Error = Self::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/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] 22 |     type Future = Box<dyn Future<Item = Self::Response, Error = Self::Error>>;
[INFO] [stdout]    |                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> examples/rpcpb/mod.rs:144:18
[INFO] [stdout]     |
[INFO] [stdout] 144 |         self as &::std::any::Any
[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/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] 144 |         self as &dyn (::std::any::Any)
[INFO] [stdout]     |                  +++++               +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> examples/rpcpb/mod.rs:147:22
[INFO] [stdout]     |
[INFO] [stdout] 147 |         self as &mut ::std::any::Any
[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/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] 147 |         self as &mut dyn (::std::any::Any)
[INFO] [stdout]     |                      +++++               +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> examples/rpcpb/mod.rs:375:18
[INFO] [stdout]     |
[INFO] [stdout] 375 |         self as &::std::any::Any
[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/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] 375 |         self as &dyn (::std::any::Any)
[INFO] [stdout]     |                  +++++               +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> examples/rpcpb/mod.rs:378:22
[INFO] [stdout]     |
[INFO] [stdout] 378 |         self as &mut ::std::any::Any
[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/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] 378 |         self as &mut dyn (::std::any::Any)
[INFO] [stdout]     |                      +++++               +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> examples/rpcpb/mod.rs:610:18
[INFO] [stdout]     |
[INFO] [stdout] 610 |         self as &::std::any::Any
[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/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] 610 |         self as &dyn (::std::any::Any)
[INFO] [stdout]     |                  +++++               +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> examples/rpcpb/mod.rs:613:22
[INFO] [stdout]     |
[INFO] [stdout] 613 |         self as &mut ::std::any::Any
[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/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] 613 |         self as &mut dyn (::std::any::Any)
[INFO] [stdout]     |                      +++++               +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> examples/rpcpb/mod.rs:838:18
[INFO] [stdout]     |
[INFO] [stdout] 838 |         self as &::std::any::Any
[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/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] 838 |         self as &dyn (::std::any::Any)
[INFO] [stdout]     |                  +++++               +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> examples/rpcpb/mod.rs:841:22
[INFO] [stdout]     |
[INFO] [stdout] 841 |         self as &mut ::std::any::Any
[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/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] 841 |         self as &mut dyn (::std::any::Any)
[INFO] [stdout]     |                      +++++               +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]     --> examples/rpcpb/mod.rs:1029:18
[INFO] [stdout]      |
[INFO] [stdout] 1029 |         self as &::std::any::Any
[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/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] 1029 |         self as &dyn (::std::any::Any)
[INFO] [stdout]      |                  +++++               +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]     --> examples/rpcpb/mod.rs:1032:22
[INFO] [stdout]      |
[INFO] [stdout] 1032 |         self as &mut ::std::any::Any
[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/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] 1032 |         self as &mut dyn (::std::any::Any)
[INFO] [stdout]      |                      +++++               +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]     --> examples/rpcpb/mod.rs:1214:18
[INFO] [stdout]      |
[INFO] [stdout] 1214 |         self as &::std::any::Any
[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/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] 1214 |         self as &dyn (::std::any::Any)
[INFO] [stdout]      |                  +++++               +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]     --> examples/rpcpb/mod.rs:1217:22
[INFO] [stdout]      |
[INFO] [stdout] 1217 |         self as &mut ::std::any::Any
[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/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] 1217 |         self as &mut dyn (::std::any::Any)
[INFO] [stdout]      |                      +++++               +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]     --> examples/rpcpb/mod.rs:1616:18
[INFO] [stdout]      |
[INFO] [stdout] 1616 |         self as &::std::any::Any
[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/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] 1616 |         self as &dyn (::std::any::Any)
[INFO] [stdout]      |                  +++++               +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]     --> examples/rpcpb/mod.rs:1619:22
[INFO] [stdout]      |
[INFO] [stdout] 1619 |         self as &mut ::std::any::Any
[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/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] 1619 |         self as &mut dyn (::std::any::Any)
[INFO] [stdout]      |                      +++++               +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]     --> examples/rpcpb/mod.rs:2034:18
[INFO] [stdout]      |
[INFO] [stdout] 2034 |         self as &::std::any::Any
[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/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] 2034 |         self as &dyn (::std::any::Any)
[INFO] [stdout]      |                  +++++               +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]     --> examples/rpcpb/mod.rs:2037:22
[INFO] [stdout]      |
[INFO] [stdout] 2037 |         self as &mut ::std::any::Any
[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/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] 2037 |         self as &mut dyn (::std::any::Any)
[INFO] [stdout]      |                      +++++               +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `futures::Future::boxed`: removed without replacement, recommended to use a local extension trait or function if needed, more details in https://github.com/rust-lang-nursery/futures-rs/issues/228
[INFO] [stdout]   --> examples/protobuf_rpc.rs:27:75
[INFO] [stdout]    |
[INFO] [stdout] 27 |             return future::err(io::Error::new(io::ErrorKind::Other, err)).boxed();
[INFO] [stdout]    |                                                                           ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `futures::Future::boxed`: removed without replacement, recommended to use a local extension trait or function if needed, more details in https://github.com/rust-lang-nursery/futures-rs/issues/228
[INFO] [stdout]   --> examples/protobuf_rpc.rs:41:40
[INFO] [stdout]    |
[INFO] [stdout] 41 |             Ok(val) => future::ok(val).boxed(),
[INFO] [stdout]    |                                        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `futures::Future::boxed`: removed without replacement, recommended to use a local extension trait or function if needed, more details in https://github.com/rust-lang-nursery/futures-rs/issues/228
[INFO] [stdout]   --> examples/protobuf_rpc.rs:42:80
[INFO] [stdout]    |
[INFO] [stdout] 42 |             Err(err) => future::err(io::Error::new(io::ErrorKind::Other, err)).boxed(),
[INFO] [stdout]    |                                                                                ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]   --> examples/rpcpb/mod.rs:46:18
[INFO] [stdout]    |
[INFO] [stdout] 46 |         unsafe { instance.get(CmdGetRequest::new) }
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]    |
[INFO] [stdout]    = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]    = note: `#[warn(static_mut_refs)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> examples/rpcpb/mod.rs:171:13
[INFO] [stdout]     |
[INFO] [stdout] 171 | /             descriptor.get(|| {
[INFO] [stdout] 172 | |                 let mut fields = ::std::vec::Vec::new();
[INFO] [stdout] 173 | |                 fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>(
[INFO] [stdout] 174 | |                     "key",
[INFO] [stdout] ...   |
[INFO] [stdout] 183 | |             })
[INFO] [stdout]     | |______________^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> examples/rpcpb/mod.rs:202:15
[INFO] [stdout]     |
[INFO] [stdout] 202 |     fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef {
[INFO] [stdout]     |               ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |               |
[INFO] [stdout]     |               the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 202 |     fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef<'_> {
[INFO] [stdout]     |                                                              ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> examples/rpcpb/mod.rs:230:18
[INFO] [stdout]     |
[INFO] [stdout] 230 |         unsafe { instance.get(CmdGetResponse::new) }
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> examples/rpcpb/mod.rs:402:13
[INFO] [stdout]     |
[INFO] [stdout] 402 | /             descriptor.get(|| {
[INFO] [stdout] 403 | |                 let mut fields = ::std::vec::Vec::new();
[INFO] [stdout] 404 | |                 fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>(
[INFO] [stdout] 405 | |                     "result",
[INFO] [stdout] ...   |
[INFO] [stdout] 419 | |             })
[INFO] [stdout]     | |______________^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> examples/rpcpb/mod.rs:439:15
[INFO] [stdout]     |
[INFO] [stdout] 439 |     fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef {
[INFO] [stdout]     |               ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |               |
[INFO] [stdout]     |               the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 439 |     fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef<'_> {
[INFO] [stdout]     |                                                              ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> examples/rpcpb/mod.rs:467:18
[INFO] [stdout]     |
[INFO] [stdout] 467 |         unsafe { instance.get(CmdSetRequest::new) }
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> examples/rpcpb/mod.rs:637:13
[INFO] [stdout]     |
[INFO] [stdout] 637 | /             descriptor.get(|| {
[INFO] [stdout] 638 | |                 let mut fields = ::std::vec::Vec::new();
[INFO] [stdout] 639 | |                 fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>(
[INFO] [stdout] 640 | |                     "key",
[INFO] [stdout] ...   |
[INFO] [stdout] 654 | |             })
[INFO] [stdout]     | |______________^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> examples/rpcpb/mod.rs:674:15
[INFO] [stdout]     |
[INFO] [stdout] 674 |     fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef {
[INFO] [stdout]     |               ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |               |
[INFO] [stdout]     |               the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 674 |     fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef<'_> {
[INFO] [stdout]     |                                                              ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> examples/rpcpb/mod.rs:702:18
[INFO] [stdout]     |
[INFO] [stdout] 702 |         unsafe { instance.get(CmdSetResponse::new) }
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> examples/rpcpb/mod.rs:865:13
[INFO] [stdout]     |
[INFO] [stdout] 865 | /             descriptor.get(|| {
[INFO] [stdout] 866 | |                 let mut fields = ::std::vec::Vec::new();
[INFO] [stdout] 867 | |                 fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeBool>(
[INFO] [stdout] 868 | |                     "result",
[INFO] [stdout] ...   |
[INFO] [stdout] 882 | |             })
[INFO] [stdout]     | |______________^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> examples/rpcpb/mod.rs:902:15
[INFO] [stdout]     |
[INFO] [stdout] 902 |     fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef {
[INFO] [stdout]     |               ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |               |
[INFO] [stdout]     |               the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 902 |     fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef<'_> {
[INFO] [stdout]     |                                                              ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> examples/rpcpb/mod.rs:929:18
[INFO] [stdout]     |
[INFO] [stdout] 929 |         unsafe { instance.get(CmdPingRequest::new) }
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]     --> examples/rpcpb/mod.rs:1056:13
[INFO] [stdout]      |
[INFO] [stdout] 1056 | /             descriptor.get(|| {
[INFO] [stdout] 1057 | |                 let mut fields = ::std::vec::Vec::new();
[INFO] [stdout] 1058 | |                 fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
[INFO] [stdout] 1059 | |                     "message",
[INFO] [stdout] ...    |
[INFO] [stdout] 1068 | |             })
[INFO] [stdout]      | |______________^ mutable reference to mutable static
[INFO] [stdout]      |
[INFO] [stdout]      = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]     --> examples/rpcpb/mod.rs:1087:15
[INFO] [stdout]      |
[INFO] [stdout] 1087 |     fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef {
[INFO] [stdout]      |               ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]      |               |
[INFO] [stdout]      |               the lifetime is elided here
[INFO] [stdout]      |
[INFO] [stdout]      = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]      |
[INFO] [stdout] 1087 |     fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef<'_> {
[INFO] [stdout]      |                                                              ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]     --> examples/rpcpb/mod.rs:1114:18
[INFO] [stdout]      |
[INFO] [stdout] 1114 |         unsafe { instance.get(CmdPingResponse::new) }
[INFO] [stdout]      |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]      |
[INFO] [stdout]      = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]     --> examples/rpcpb/mod.rs:1241:13
[INFO] [stdout]      |
[INFO] [stdout] 1241 | /             descriptor.get(|| {
[INFO] [stdout] 1242 | |                 let mut fields = ::std::vec::Vec::new();
[INFO] [stdout] 1243 | |                 fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
[INFO] [stdout] 1244 | |                     "message",
[INFO] [stdout] ...    |
[INFO] [stdout] 1253 | |             })
[INFO] [stdout]      | |______________^ mutable reference to mutable static
[INFO] [stdout]      |
[INFO] [stdout]      = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]     --> examples/rpcpb/mod.rs:1272:15
[INFO] [stdout]      |
[INFO] [stdout] 1272 |     fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef {
[INFO] [stdout]      |               ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]      |               |
[INFO] [stdout]      |               the lifetime is elided here
[INFO] [stdout]      |
[INFO] [stdout]      = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]      |
[INFO] [stdout] 1272 |     fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef<'_> {
[INFO] [stdout]      |                                                              ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]     --> examples/rpcpb/mod.rs:1308:18
[INFO] [stdout]      |
[INFO] [stdout] 1308 |         unsafe { instance.get(Request::new) }
[INFO] [stdout]      |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]      |
[INFO] [stdout]      = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]     --> examples/rpcpb/mod.rs:1643:13
[INFO] [stdout]      |
[INFO] [stdout] 1643 | / ...   descriptor.get(|| {
[INFO] [stdout] 1644 | | ...       let mut fields = ::std::vec::Vec::new();
[INFO] [stdout] 1645 | | ...       fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeEnum<Message...
[INFO] [stdout] 1646 | | ...           "type",
[INFO] [stdout] ...    |
[INFO] [stdout] 1670 | | ...   })
[INFO] [stdout]      | |________^ mutable reference to mutable static
[INFO] [stdout]      |
[INFO] [stdout]      = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]     --> examples/rpcpb/mod.rs:1692:15
[INFO] [stdout]      |
[INFO] [stdout] 1692 |     fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef {
[INFO] [stdout]      |               ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]      |               |
[INFO] [stdout]      |               the lifetime is elided here
[INFO] [stdout]      |
[INFO] [stdout]      = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]      |
[INFO] [stdout] 1692 |     fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef<'_> {
[INFO] [stdout]      |                                                              ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]     --> examples/rpcpb/mod.rs:1728:18
[INFO] [stdout]      |
[INFO] [stdout] 1728 |         unsafe { instance.get(Response::new) }
[INFO] [stdout]      |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]      |
[INFO] [stdout]      = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]     --> examples/rpcpb/mod.rs:2061:13
[INFO] [stdout]      |
[INFO] [stdout] 2061 | / ...   descriptor.get(|| {
[INFO] [stdout] 2062 | | ...       let mut fields = ::std::vec::Vec::new();
[INFO] [stdout] 2063 | | ...       fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeEnum<Message...
[INFO] [stdout] 2064 | | ...           "type",
[INFO] [stdout] ...    |
[INFO] [stdout] 2088 | | ...   })
[INFO] [stdout]      | |________^ mutable reference to mutable static
[INFO] [stdout]      |
[INFO] [stdout]      = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]     --> examples/rpcpb/mod.rs:2110:15
[INFO] [stdout]      |
[INFO] [stdout] 2110 |     fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef {
[INFO] [stdout]      |               ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]      |               |
[INFO] [stdout]      |               the lifetime is elided here
[INFO] [stdout]      |
[INFO] [stdout]      = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]      |
[INFO] [stdout] 2110 |     fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef<'_> {
[INFO] [stdout]      |                                                              ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]     --> examples/rpcpb/mod.rs:2150:13
[INFO] [stdout]      |
[INFO] [stdout] 2150 | /             descriptor.get(|| {
[INFO] [stdout] 2151 | |                                ::protobuf::reflect::EnumDescriptor::new("MessageType",
[INFO] [stdout] 2152 | |                                                                         file_descriptor_proto())
[INFO] [stdout] 2153 | |                            })
[INFO] [stdout]      | |_____________________________^ mutable reference to mutable static
[INFO] [stdout]      |
[INFO] [stdout]      = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]     --> examples/rpcpb/mod.rs:2167:15
[INFO] [stdout]      |
[INFO] [stdout] 2167 |     fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef {
[INFO] [stdout]      |               ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]      |               |
[INFO] [stdout]      |               the lifetime is elided here
[INFO] [stdout]      |
[INFO] [stdout]      = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]      |
[INFO] [stdout] 2167 |     fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef<'_> {
[INFO] [stdout]      |                                                              ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]     --> examples/rpcpb/mod.rs:2344:14
[INFO] [stdout]      |
[INFO] [stdout] 2344 |     unsafe { file_descriptor_proto_lazy.get(|| parse_descriptor_proto()) }
[INFO] [stdout]      |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]      |
[INFO] [stdout]      = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 8.06s
[INFO] running `Command { std: "docker" "inspect" "aa18bb6d371e4e8cf34dab24babf33b40b88a6f86e345951727aeb6dd7d8f650", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "aa18bb6d371e4e8cf34dab24babf33b40b88a6f86e345951727aeb6dd7d8f650" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "test" "--frozen", kill_on_drop: false }`
[INFO] [stderr] warning: Cargo.toml: `package.edition` is unspecified, defaulting to `2015` while the latest is `2024`
[INFO] [stderr] warning: `tokio-rpc` (manifest) generated 1 warning
[INFO] [stderr] warning: unused import: `str`
[INFO] [stderr]  --> src/rpc.rs:5:15
[INFO] [stderr]   |
[INFO] [stderr] 5 | use std::{io, str};
[INFO] [stderr]   |               ^^^
[INFO] [stderr]   |
[INFO] [stderr] note: the lint level is defined here
[INFO] [stderr]  --> src/rpc.rs:3:9
[INFO] [stderr]   |
[INFO] [stderr] 3 | #![deny(warnings, missing_docs)]
[INFO] [stderr]   |         ^^^^^^^^
[INFO] [stderr]   = note: `#[warn(unused_imports)]` implied by `#[warn(warnings)]`
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/rpc.rs:73:21
[INFO] [stderr]    |
[INFO] [stderr] 73 |         let inner = try!(self.inner.new_service());
[INFO] [stderr]    |                     ^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(deprecated)]` implied by `#[warn(warnings)]`
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated struct `tokio_io::codec::Framed`: Moved to tokio-codec
[INFO] [stderr]   --> src/rpc.rs:10:41
[INFO] [stderr]    |
[INFO] [stderr] 10 | use tokio_io::codec::{Encoder, Decoder, Framed};
[INFO] [stderr]    |                                         ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated struct `tokio_io::codec::Framed`: Moved to tokio-codec
[INFO] [stderr]    --> src/rpc.rs:168:22
[INFO] [stderr]     |
[INFO] [stderr] 168 |     type Transport = Framed<T, RPCCodec>;
[INFO] [stderr]     |                      ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated struct `tokio_io::codec::Framed`: Moved to tokio-codec
[INFO] [stderr]    --> src/rpc.rs:180:22
[INFO] [stderr]     |
[INFO] [stderr] 180 |     type Transport = Framed<T, RPCCodec>;
[INFO] [stderr]     |                      ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/rpc.rs:56:23
[INFO] [stderr]    |
[INFO] [stderr] 56 |     type Future = Box<Future<Item = Self::Response, Error = Self::Error>>;
[INFO] [stderr]    |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr]    = note: `#[warn(bare_trait_objects)]` implied by `#[warn(warnings)]`
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]    |
[INFO] [stderr] 56 |     type Future = Box<dyn Future<Item = Self::Response, Error = Self::Error>>;
[INFO] [stderr]    |                       +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/rpc.rs:99:23
[INFO] [stderr]    |
[INFO] [stderr] 99 |     type Future = Box<Future<Item = Self::Response, Error = Self::Error>>;
[INFO] [stderr]    |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]    |
[INFO] [stderr] 99 |     type Future = Box<dyn Future<Item = Self::Response, Error = Self::Error>>;
[INFO] [stderr]    |                       +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/rpc.rs:83:27
[INFO] [stderr]    |
[INFO] [stderr] 83 |                    -> Box<Future<Item = Client, Error = io::Error>> {
[INFO] [stderr]    |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]    |
[INFO] [stderr] 83 |                    -> Box<dyn Future<Item = Client, Error = io::Error>> {
[INFO] [stderr]    |                           +++
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated method `bytes::BufMut::put_u64`: use put_u64_be or put_u64_le
[INFO] [stderr]    --> src/rpc.rs:157:13
[INFO] [stderr]     |
[INFO] [stderr] 157 |         buf.put_u64::<BigEndian>(id | MAGIC_VER_VAL);
[INFO] [stderr]     |             ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated method `bytes::BufMut::put_u32`: use put_u32_be or put_u32_le
[INFO] [stderr]    --> src/rpc.rs:158:13
[INFO] [stderr]     |
[INFO] [stderr] 158 |         buf.put_u32::<BigEndian>(payload_len as u32);
[INFO] [stderr]     |             ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated method `tokio_io::AsyncRead::framed`: Use tokio_codec::Decoder::framed instead
[INFO] [stderr]    --> src/rpc.rs:172:15
[INFO] [stderr]     |
[INFO] [stderr] 172 |         Ok(io.framed(RPCCodec))
[INFO] [stderr]     |               ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated method `tokio_io::AsyncRead::framed`: Use tokio_codec::Decoder::framed instead
[INFO] [stderr]    --> src/rpc.rs:184:15
[INFO] [stderr]     |
[INFO] [stderr] 184 |         Ok(io.framed(RPCCodec))
[INFO] [stderr]     |               ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `tokio-rpc` (lib) generated 12 warnings (run `cargo fix --lib -p tokio-rpc` to apply 4 suggestions)
[INFO] [stderr] warning: `tokio-rpc` (lib test) generated 12 warnings (12 duplicates)
[INFO] [stderr] warning: lint `box_pointers` has been removed: it does not detect other kinds of allocations, and existed only for historical reasons
[INFO] [stderr]   --> examples/rpcpb/mod.rs:10:10
[INFO] [stderr]    |
[INFO] [stderr] 10 | #![allow(box_pointers)]
[INFO] [stderr]    |          ^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(renamed_and_removed_lints)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> examples/rpcpb/mod.rs:143:26
[INFO] [stderr]     |
[INFO] [stderr] 143 |     fn as_any(&self) -> &::std::any::Any {
[INFO] [stderr]     |                          ^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr]     = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 143 |     fn as_any(&self) -> &dyn (::std::any::Any) {
[INFO] [stderr]     |                          +++++               +
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> examples/rpcpb/mod.rs:146:38
[INFO] [stderr]     |
[INFO] [stderr] 146 |     fn as_any_mut(&mut self) -> &mut ::std::any::Any {
[INFO] [stderr]     |                                      ^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 146 |     fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
[INFO] [stderr]     |                                      +++++               +
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> examples/rpcpb/mod.rs:149:55
[INFO] [stderr]     |
[INFO] [stderr] 149 |     fn into_any(self: Box<Self>) -> ::std::boxed::Box<::std::any::Any> {
[INFO] [stderr]     |                                                       ^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 149 |     fn into_any(self: Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
[INFO] [stderr]     |                                                       +++++               +
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> examples/rpcpb/mod.rs:374:26
[INFO] [stderr]     |
[INFO] [stderr] 374 |     fn as_any(&self) -> &::std::any::Any {
[INFO] [stderr]     |                          ^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 374 |     fn as_any(&self) -> &dyn (::std::any::Any) {
[INFO] [stderr]     |                          +++++               +
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> examples/rpcpb/mod.rs:377:38
[INFO] [stderr]     |
[INFO] [stderr] 377 |     fn as_any_mut(&mut self) -> &mut ::std::any::Any {
[INFO] [stderr]     |                                      ^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 377 |     fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
[INFO] [stderr]     |                                      +++++               +
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> examples/rpcpb/mod.rs:380:55
[INFO] [stderr]     |
[INFO] [stderr] 380 |     fn into_any(self: Box<Self>) -> ::std::boxed::Box<::std::any::Any> {
[INFO] [stderr]     |                                                       ^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 380 |     fn into_any(self: Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
[INFO] [stderr]     |                                                       +++++               +
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> examples/rpcpb/mod.rs:609:26
[INFO] [stderr]     |
[INFO] [stderr] 609 |     fn as_any(&self) -> &::std::any::Any {
[INFO] [stderr]     |                          ^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 609 |     fn as_any(&self) -> &dyn (::std::any::Any) {
[INFO] [stderr]     |                          +++++               +
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> examples/rpcpb/mod.rs:612:38
[INFO] [stderr]     |
[INFO] [stderr] 612 |     fn as_any_mut(&mut self) -> &mut ::std::any::Any {
[INFO] [stderr]     |                                      ^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 612 |     fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
[INFO] [stderr]     |                                      +++++               +
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> examples/rpcpb/mod.rs:615:55
[INFO] [stderr]     |
[INFO] [stderr] 615 |     fn into_any(self: Box<Self>) -> ::std::boxed::Box<::std::any::Any> {
[INFO] [stderr]     |                                                       ^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 615 |     fn into_any(self: Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
[INFO] [stderr]     |                                                       +++++               +
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> examples/rpcpb/mod.rs:837:26
[INFO] [stderr]     |
[INFO] [stderr] 837 |     fn as_any(&self) -> &::std::any::Any {
[INFO] [stderr]     |                          ^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 837 |     fn as_any(&self) -> &dyn (::std::any::Any) {
[INFO] [stderr]     |                          +++++               +
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> examples/rpcpb/mod.rs:840:38
[INFO] [stderr]     |
[INFO] [stderr] 840 |     fn as_any_mut(&mut self) -> &mut ::std::any::Any {
[INFO] [stderr]     |                                      ^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 840 |     fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
[INFO] [stderr]     |                                      +++++               +
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> examples/rpcpb/mod.rs:843:55
[INFO] [stderr]     |
[INFO] [stderr] 843 |     fn into_any(self: Box<Self>) -> ::std::boxed::Box<::std::any::Any> {
[INFO] [stderr]     |                                                       ^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 843 |     fn into_any(self: Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
[INFO] [stderr]     |                                                       +++++               +
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> examples/rpcpb/mod.rs:1028:26
[INFO] [stderr]      |
[INFO] [stderr] 1028 |     fn as_any(&self) -> &::std::any::Any {
[INFO] [stderr]      |                          ^^^^^^^^^^^^^^^
[INFO] [stderr]      |
[INFO] [stderr]      = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]      |
[INFO] [stderr] 1028 |     fn as_any(&self) -> &dyn (::std::any::Any) {
[INFO] [stderr]      |                          +++++               +
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> examples/rpcpb/mod.rs:1031:38
[INFO] [stderr]      |
[INFO] [stderr] 1031 |     fn as_any_mut(&mut self) -> &mut ::std::any::Any {
[INFO] [stderr]      |                                      ^^^^^^^^^^^^^^^
[INFO] [stderr]      |
[INFO] [stderr]      = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]      |
[INFO] [stderr] 1031 |     fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
[INFO] [stderr]      |                                      +++++               +
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> examples/rpcpb/mod.rs:1034:55
[INFO] [stderr]      |
[INFO] [stderr] 1034 |     fn into_any(self: Box<Self>) -> ::std::boxed::Box<::std::any::Any> {
[INFO] [stderr]      |                                                       ^^^^^^^^^^^^^^^
[INFO] [stderr]      |
[INFO] [stderr]      = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]      |
[INFO] [stderr] 1034 |     fn into_any(self: Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
[INFO] [stderr]      |                                                       +++++               +
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> examples/rpcpb/mod.rs:1213:26
[INFO] [stderr]      |
[INFO] [stderr] 1213 |     fn as_any(&self) -> &::std::any::Any {
[INFO] [stderr]      |                          ^^^^^^^^^^^^^^^
[INFO] [stderr]      |
[INFO] [stderr]      = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]      |
[INFO] [stderr] 1213 |     fn as_any(&self) -> &dyn (::std::any::Any) {
[INFO] [stderr]      |                          +++++               +
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> examples/rpcpb/mod.rs:1216:38
[INFO] [stderr]      |
[INFO] [stderr] 1216 |     fn as_any_mut(&mut self) -> &mut ::std::any::Any {
[INFO] [stderr]      |                                      ^^^^^^^^^^^^^^^
[INFO] [stderr]      |
[INFO] [stderr]      = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]      |
[INFO] [stderr] 1216 |     fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
[INFO] [stderr]      |                                      +++++               +
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> examples/rpcpb/mod.rs:1219:55
[INFO] [stderr]      |
[INFO] [stderr] 1219 |     fn into_any(self: Box<Self>) -> ::std::boxed::Box<::std::any::Any> {
[INFO] [stderr]      |                                                       ^^^^^^^^^^^^^^^
[INFO] [stderr]      |
[INFO] [stderr]      = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]      |
[INFO] [stderr] 1219 |     fn into_any(self: Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
[INFO] [stderr]      |                                                       +++++               +
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> examples/rpcpb/mod.rs:1615:26
[INFO] [stderr]      |
[INFO] [stderr] 1615 |     fn as_any(&self) -> &::std::any::Any {
[INFO] [stderr]      |                          ^^^^^^^^^^^^^^^
[INFO] [stderr]      |
[INFO] [stderr]      = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]      |
[INFO] [stderr] 1615 |     fn as_any(&self) -> &dyn (::std::any::Any) {
[INFO] [stderr]      |                          +++++               +
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> examples/rpcpb/mod.rs:1618:38
[INFO] [stderr]      |
[INFO] [stderr] 1618 |     fn as_any_mut(&mut self) -> &mut ::std::any::Any {
[INFO] [stderr]      |                                      ^^^^^^^^^^^^^^^
[INFO] [stderr]      |
[INFO] [stderr]      = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]      |
[INFO] [stderr] 1618 |     fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
[INFO] [stderr]      |                                      +++++               +
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> examples/rpcpb/mod.rs:1621:55
[INFO] [stderr]      |
[INFO] [stderr] 1621 |     fn into_any(self: Box<Self>) -> ::std::boxed::Box<::std::any::Any> {
[INFO] [stderr]      |                                                       ^^^^^^^^^^^^^^^
[INFO] [stderr]      |
[INFO] [stderr]      = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]      |
[INFO] [stderr] 1621 |     fn into_any(self: Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
[INFO] [stderr]      |                                                       +++++               +
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> examples/rpcpb/mod.rs:2033:26
[INFO] [stderr]      |
[INFO] [stderr] 2033 |     fn as_any(&self) -> &::std::any::Any {
[INFO] [stderr]      |                          ^^^^^^^^^^^^^^^
[INFO] [stderr]      |
[INFO] [stderr]      = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]      |
[INFO] [stderr] 2033 |     fn as_any(&self) -> &dyn (::std::any::Any) {
[INFO] [stderr]      |                          +++++               +
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> examples/rpcpb/mod.rs:2036:38
[INFO] [stderr]      |
[INFO] [stderr] 2036 |     fn as_any_mut(&mut self) -> &mut ::std::any::Any {
[INFO] [stderr]      |                                      ^^^^^^^^^^^^^^^
[INFO] [stderr]      |
[INFO] [stderr]      = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]      |
[INFO] [stderr] 2036 |     fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
[INFO] [stderr]      |                                      +++++               +
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> examples/rpcpb/mod.rs:2039:55
[INFO] [stderr]      |
[INFO] [stderr] 2039 |     fn into_any(self: Box<Self>) -> ::std::boxed::Box<::std::any::Any> {
[INFO] [stderr]      |                                                       ^^^^^^^^^^^^^^^
[INFO] [stderr]      |
[INFO] [stderr]      = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]      |
[INFO] [stderr] 2039 |     fn into_any(self: Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
[INFO] [stderr]      |                                                       +++++               +
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> examples/protobuf_rpc.rs:22:23
[INFO] [stderr]    |
[INFO] [stderr] 22 |     type Future = Box<Future<Item = Self::Response, Error = Self::Error>>;
[INFO] [stderr]    |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]    |
[INFO] [stderr] 22 |     type Future = Box<dyn Future<Item = Self::Response, Error = Self::Error>>;
[INFO] [stderr]    |                       +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> examples/rpcpb/mod.rs:144:18
[INFO] [stderr]     |
[INFO] [stderr] 144 |         self as &::std::any::Any
[INFO] [stderr]     |                  ^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 144 |         self as &dyn (::std::any::Any)
[INFO] [stderr]     |                  +++++               +
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> examples/rpcpb/mod.rs:147:22
[INFO] [stderr]     |
[INFO] [stderr] 147 |         self as &mut ::std::any::Any
[INFO] [stderr]     |                      ^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 147 |         self as &mut dyn (::std::any::Any)
[INFO] [stderr]     |                      +++++               +
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> examples/rpcpb/mod.rs:375:18
[INFO] [stderr]     |
[INFO] [stderr] 375 |         self as &::std::any::Any
[INFO] [stderr]     |                  ^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 375 |         self as &dyn (::std::any::Any)
[INFO] [stderr]     |                  +++++               +
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> examples/rpcpb/mod.rs:378:22
[INFO] [stderr]     |
[INFO] [stderr] 378 |         self as &mut ::std::any::Any
[INFO] [stderr]     |                      ^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 378 |         self as &mut dyn (::std::any::Any)
[INFO] [stderr]     |                      +++++               +
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> examples/rpcpb/mod.rs:610:18
[INFO] [stderr]     |
[INFO] [stderr] 610 |         self as &::std::any::Any
[INFO] [stderr]     |                  ^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 610 |         self as &dyn (::std::any::Any)
[INFO] [stderr]     |                  +++++               +
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> examples/rpcpb/mod.rs:613:22
[INFO] [stderr]     |
[INFO] [stderr] 613 |         self as &mut ::std::any::Any
[INFO] [stderr]     |                      ^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 613 |         self as &mut dyn (::std::any::Any)
[INFO] [stderr]     |                      +++++               +
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> examples/rpcpb/mod.rs:838:18
[INFO] [stderr]     |
[INFO] [stderr] 838 |         self as &::std::any::Any
[INFO] [stderr]     |                  ^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 838 |         self as &dyn (::std::any::Any)
[INFO] [stderr]     |                  +++++               +
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> examples/rpcpb/mod.rs:841:22
[INFO] [stderr]     |
[INFO] [stderr] 841 |         self as &mut ::std::any::Any
[INFO] [stderr]     |                      ^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 841 |         self as &mut dyn (::std::any::Any)
[INFO] [stderr]     |                      +++++               +
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> examples/rpcpb/mod.rs:1029:18
[INFO] [stderr]      |
[INFO] [stderr] 1029 |         self as &::std::any::Any
[INFO] [stderr]      |                  ^^^^^^^^^^^^^^^
[INFO] [stderr]      |
[INFO] [stderr]      = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]      |
[INFO] [stderr] 1029 |         self as &dyn (::std::any::Any)
[INFO] [stderr]      |                  +++++               +
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> examples/rpcpb/mod.rs:1032:22
[INFO] [stderr]      |
[INFO] [stderr] 1032 |         self as &mut ::std::any::Any
[INFO] [stderr]      |                      ^^^^^^^^^^^^^^^
[INFO] [stderr]      |
[INFO] [stderr]      = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]      |
[INFO] [stderr] 1032 |         self as &mut dyn (::std::any::Any)
[INFO] [stderr]      |                      +++++               +
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> examples/rpcpb/mod.rs:1214:18
[INFO] [stderr]      |
[INFO] [stderr] 1214 |         self as &::std::any::Any
[INFO] [stderr]      |                  ^^^^^^^^^^^^^^^
[INFO] [stderr]      |
[INFO] [stderr]      = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]      |
[INFO] [stderr] 1214 |         self as &dyn (::std::any::Any)
[INFO] [stderr]      |                  +++++               +
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> examples/rpcpb/mod.rs:1217:22
[INFO] [stderr]      |
[INFO] [stderr] 1217 |         self as &mut ::std::any::Any
[INFO] [stderr]      |                      ^^^^^^^^^^^^^^^
[INFO] [stderr]      |
[INFO] [stderr]      = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]      |
[INFO] [stderr] 1217 |         self as &mut dyn (::std::any::Any)
[INFO] [stderr]      |                      +++++               +
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> examples/rpcpb/mod.rs:1616:18
[INFO] [stderr]      |
[INFO] [stderr] 1616 |         self as &::std::any::Any
[INFO] [stderr]      |                  ^^^^^^^^^^^^^^^
[INFO] [stderr]      |
[INFO] [stderr]      = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]      |
[INFO] [stderr] 1616 |         self as &dyn (::std::any::Any)
[INFO] [stderr]      |                  +++++               +
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> examples/rpcpb/mod.rs:1619:22
[INFO] [stderr]      |
[INFO] [stderr] 1619 |         self as &mut ::std::any::Any
[INFO] [stderr]      |                      ^^^^^^^^^^^^^^^
[INFO] [stderr]      |
[INFO] [stderr]      = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]      |
[INFO] [stderr] 1619 |         self as &mut dyn (::std::any::Any)
[INFO] [stderr]      |                      +++++               +
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> examples/rpcpb/mod.rs:2034:18
[INFO] [stderr]      |
[INFO] [stderr] 2034 |         self as &::std::any::Any
[INFO] [stderr]      |                  ^^^^^^^^^^^^^^^
[INFO] [stderr]      |
[INFO] [stderr]      = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]      |
[INFO] [stderr] 2034 |         self as &dyn (::std::any::Any)
[INFO] [stderr]      |                  +++++               +
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> examples/rpcpb/mod.rs:2037:22
[INFO] [stderr]      |
[INFO] [stderr] 2037 |         self as &mut ::std::any::Any
[INFO] [stderr]      |                      ^^^^^^^^^^^^^^^
[INFO] [stderr]      |
[INFO] [stderr]      = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]      |
[INFO] [stderr] 2037 |         self as &mut dyn (::std::any::Any)
[INFO] [stderr]      |                      +++++               +
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated method `futures::Future::boxed`: removed without replacement, recommended to use a local extension trait or function if needed, more details in https://github.com/rust-lang-nursery/futures-rs/issues/228
[INFO] [stderr]   --> examples/protobuf_rpc.rs:27:75
[INFO] [stderr]    |
[INFO] [stderr] 27 |             return future::err(io::Error::new(io::ErrorKind::Other, err)).boxed();
[INFO] [stderr]    |                                                                           ^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(deprecated)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated method `futures::Future::boxed`: removed without replacement, recommended to use a local extension trait or function if needed, more details in https://github.com/rust-lang-nursery/futures-rs/issues/228
[INFO] [stderr]   --> examples/protobuf_rpc.rs:41:40
[INFO] [stderr]    |
[INFO] [stderr] 41 |             Ok(val) => future::ok(val).boxed(),
[INFO] [stderr]    |                                        ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated method `futures::Future::boxed`: removed without replacement, recommended to use a local extension trait or function if needed, more details in https://github.com/rust-lang-nursery/futures-rs/issues/228
[INFO] [stderr]   --> examples/protobuf_rpc.rs:42:80
[INFO] [stderr]    |
[INFO] [stderr] 42 |             Err(err) => future::err(io::Error::new(io::ErrorKind::Other, err)).boxed(),
[INFO] [stderr]    |                                                                                ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static
[INFO] [stderr]   --> examples/rpcpb/mod.rs:46:18
[INFO] [stderr]    |
[INFO] [stderr] 46 |         unsafe { instance.get(CmdGetRequest::new) }
[INFO] [stderr]    |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]    |
[INFO] [stderr]    = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]    = note: `#[warn(static_mut_refs)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static
[INFO] [stderr]    --> examples/rpcpb/mod.rs:171:13
[INFO] [stderr]     |
[INFO] [stderr] 171 | /             descriptor.get(|| {
[INFO] [stderr] 172 | |                 let mut fields = ::std::vec::Vec::new();
[INFO] [stderr] 173 | |                 fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>(
[INFO] [stderr] 174 | |                     "key",
[INFO] [stderr] ...   |
[INFO] [stderr] 183 | |             })
[INFO] [stderr]     | |______________^ mutable reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> examples/rpcpb/mod.rs:202:15
[INFO] [stderr]     |
[INFO] [stderr] 202 |     fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef {
[INFO] [stderr]     |               ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |               |
[INFO] [stderr]     |               the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 202 |     fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef<'_> {
[INFO] [stderr]     |                                                              ++++
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static
[INFO] [stderr]    --> examples/rpcpb/mod.rs:230:18
[INFO] [stderr]     |
[INFO] [stderr] 230 |         unsafe { instance.get(CmdGetResponse::new) }
[INFO] [stderr]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static
[INFO] [stderr]    --> examples/rpcpb/mod.rs:402:13
[INFO] [stderr]     |
[INFO] [stderr] 402 | /             descriptor.get(|| {
[INFO] [stderr] 403 | |                 let mut fields = ::std::vec::Vec::new();
[INFO] [stderr] 404 | |                 fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>(
[INFO] [stderr] 405 | |                     "result",
[INFO] [stderr] ...   |
[INFO] [stderr] 419 | |             })
[INFO] [stderr]     | |______________^ mutable reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> examples/rpcpb/mod.rs:439:15
[INFO] [stderr]     |
[INFO] [stderr] 439 |     fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef {
[INFO] [stderr]     |               ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |               |
[INFO] [stderr]     |               the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 439 |     fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef<'_> {
[INFO] [stderr]     |                                                              ++++
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static
[INFO] [stderr]    --> examples/rpcpb/mod.rs:467:18
[INFO] [stderr]     |
[INFO] [stderr] 467 |         unsafe { instance.get(CmdSetRequest::new) }
[INFO] [stderr]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static
[INFO] [stderr]    --> examples/rpcpb/mod.rs:637:13
[INFO] [stderr]     |
[INFO] [stderr] 637 | /             descriptor.get(|| {
[INFO] [stderr] 638 | |                 let mut fields = ::std::vec::Vec::new();
[INFO] [stderr] 639 | |                 fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>(
[INFO] [stderr] 640 | |                     "key",
[INFO] [stderr] ...   |
[INFO] [stderr] 654 | |             })
[INFO] [stderr]     | |______________^ mutable reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> examples/rpcpb/mod.rs:674:15
[INFO] [stderr]     |
[INFO] [stderr] 674 |     fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef {
[INFO] [stderr]     |               ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |               |
[INFO] [stderr]     |               the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 674 |     fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef<'_> {
[INFO] [stderr]     |                                                              ++++
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static
[INFO] [stderr]    --> examples/rpcpb/mod.rs:702:18
[INFO] [stderr]     |
[INFO] [stderr] 702 |         unsafe { instance.get(CmdSetResponse::new) }
[INFO] [stderr]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static
[INFO] [stderr]    --> examples/rpcpb/mod.rs:865:13
[INFO] [stderr]     |
[INFO] [stderr] 865 | /             descriptor.get(|| {
[INFO] [stderr] 866 | |                 let mut fields = ::std::vec::Vec::new();
[INFO] [stderr] 867 | |                 fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeBool>(
[INFO] [stderr] 868 | |                     "result",
[INFO] [stderr] ...   |
[INFO] [stderr] 882 | |             })
[INFO] [stderr]     | |______________^ mutable reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> examples/rpcpb/mod.rs:902:15
[INFO] [stderr]     |
[INFO] [stderr] 902 |     fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef {
[INFO] [stderr]     |               ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |               |
[INFO] [stderr]     |               the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 902 |     fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef<'_> {
[INFO] [stderr]     |                                                              ++++
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static
[INFO] [stderr]    --> examples/rpcpb/mod.rs:929:18
[INFO] [stderr]     |
[INFO] [stderr] 929 |         unsafe { instance.get(CmdPingRequest::new) }
[INFO] [stderr]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static
[INFO] [stderr]     --> examples/rpcpb/mod.rs:1056:13
[INFO] [stderr]      |
[INFO] [stderr] 1056 | /             descriptor.get(|| {
[INFO] [stderr] 1057 | |                 let mut fields = ::std::vec::Vec::new();
[INFO] [stderr] 1058 | |                 fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
[INFO] [stderr] 1059 | |                     "message",
[INFO] [stderr] ...    |
[INFO] [stderr] 1068 | |             })
[INFO] [stderr]      | |______________^ mutable reference to mutable static
[INFO] [stderr]      |
[INFO] [stderr]      = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stderr]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]     --> examples/rpcpb/mod.rs:1087:15
[INFO] [stderr]      |
[INFO] [stderr] 1087 |     fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef {
[INFO] [stderr]      |               ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]      |               |
[INFO] [stderr]      |               the lifetime is elided here
[INFO] [stderr]      |
[INFO] [stderr]      = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]      |
[INFO] [stderr] 1087 |     fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef<'_> {
[INFO] [stderr]      |                                                              ++++
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static
[INFO] [stderr]     --> examples/rpcpb/mod.rs:1114:18
[INFO] [stderr]      |
[INFO] [stderr] 1114 |         unsafe { instance.get(CmdPingResponse::new) }
[INFO] [stderr]      |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]      |
[INFO] [stderr]      = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stderr]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static
[INFO] [stderr]     --> examples/rpcpb/mod.rs:1241:13
[INFO] [stderr]      |
[INFO] [stderr] 1241 | /             descriptor.get(|| {
[INFO] [stderr] 1242 | |                 let mut fields = ::std::vec::Vec::new();
[INFO] [stderr] 1243 | |                 fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
[INFO] [stderr] 1244 | |                     "message",
[INFO] [stderr] ...    |
[INFO] [stderr] 1253 | |             })
[INFO] [stderr]      | |______________^ mutable reference to mutable static
[INFO] [stderr]      |
[INFO] [stderr]      = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stderr]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]     --> examples/rpcpb/mod.rs:1272:15
[INFO] [stderr]      |
[INFO] [stderr] 1272 |     fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef {
[INFO] [stderr]      |               ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]      |               |
[INFO] [stderr]      |               the lifetime is elided here
[INFO] [stderr]      |
[INFO] [stderr]      = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]      |
[INFO] [stderr] 1272 |     fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef<'_> {
[INFO] [stderr]      |                                                              ++++
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static
[INFO] [stderr]     --> examples/rpcpb/mod.rs:1308:18
[INFO] [stderr]      |
[INFO] [stderr] 1308 |         unsafe { instance.get(Request::new) }
[INFO] [stderr]      |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]      |
[INFO] [stderr]      = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stderr]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static
[INFO] [stderr]     --> examples/rpcpb/mod.rs:1643:13
[INFO] [stderr]      |
[INFO] [stderr] 1643 | / ...   descriptor.get(|| {
[INFO] [stderr] 1644 | | ...       let mut fields = ::std::vec::Vec::new();
[INFO] [stderr] 1645 | | ...       fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeEnum<Message...
[INFO] [stderr] 1646 | | ...           "type",
[INFO] [stderr] ...    |
[INFO] [stderr] 1670 | | ...   })
[INFO] [stderr]      | |________^ mutable reference to mutable static
[INFO] [stderr]      |
[INFO] [stderr]      = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stderr]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]     --> examples/rpcpb/mod.rs:1692:15
[INFO] [stderr]      |
[INFO] [stderr] 1692 |     fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef {
[INFO] [stderr]      |               ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]      |               |
[INFO] [stderr]      |               the lifetime is elided here
[INFO] [stderr]      |
[INFO] [stderr]      = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]      |
[INFO] [stderr] 1692 |     fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef<'_> {
[INFO] [stderr]      |                                                              ++++
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static
[INFO] [stderr]     --> examples/rpcpb/mod.rs:1728:18
[INFO] [stderr]      |
[INFO] [stderr] 1728 |         unsafe { instance.get(Response::new) }
[INFO] [stderr]      |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]      |
[INFO] [stderr]      = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stderr]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static
[INFO] [stderr]     --> examples/rpcpb/mod.rs:2061:13
[INFO] [stderr]      |
[INFO] [stderr] 2061 | / ...   descriptor.get(|| {
[INFO] [stderr] 2062 | | ...       let mut fields = ::std::vec::Vec::new();
[INFO] [stderr] 2063 | | ...       fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeEnum<Message...
[INFO] [stderr] 2064 | | ...           "type",
[INFO] [stderr] ...    |
[INFO] [stderr] 2088 | | ...   })
[INFO] [stderr]      | |________^ mutable reference to mutable static
[INFO] [stderr]      |
[INFO] [stderr]      = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stderr]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]     --> examples/rpcpb/mod.rs:2110:15
[INFO] [stderr]      |
[INFO] [stderr] 2110 |     fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef {
[INFO] [stderr]      |               ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]      |               |
[INFO] [stderr]      |               the lifetime is elided here
[INFO] [stderr]      |
[INFO] [stderr]      = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]      |
[INFO] [stderr] 2110 |     fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef<'_> {
[INFO] [stderr]      |                                                              ++++
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static
[INFO] [stderr]     --> examples/rpcpb/mod.rs:2150:13
[INFO] [stderr]      |
[INFO] [stderr] 2150 | /             descriptor.get(|| {
[INFO] [stderr] 2151 | |                                ::protobuf::reflect::EnumDescriptor::new("MessageType",
[INFO] [stderr] 2152 | |                                                                         file_descriptor_proto())
[INFO] [stderr] 2153 | |                            })
[INFO] [stderr]      | |_____________________________^ mutable reference to mutable static
[INFO] [stderr]      |
[INFO] [stderr]      = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stderr]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]     --> examples/rpcpb/mod.rs:2167:15
[INFO] [stderr]      |
[INFO] [stderr] 2167 |     fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef {
[INFO] [stderr]      |               ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]      |               |
[INFO] [stderr]      |               the lifetime is elided here
[INFO] [stderr]      |
[INFO] [stderr]      = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]      |
[INFO] [stderr] 2167 |     fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef<'_> {
[INFO] [stderr]      |                                                              ++++
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static
[INFO] [stderr]     --> examples/rpcpb/mod.rs:2344:14
[INFO] [stderr]      |
[INFO] [stderr] 2344 |     unsafe { file_descriptor_proto_lazy.get(|| parse_descriptor_proto()) }
[INFO] [stderr]      |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]      |
[INFO] [stderr]      = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stderr]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `tokio-rpc` (example "protobuf_rpc") generated 72 warnings (run `cargo fix --example "protobuf_rpc" -p tokio-rpc` to apply 50 suggestions)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.06s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/tokio_rpc-cc6db047564d6c25)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests tokio_rpc
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "aa18bb6d371e4e8cf34dab24babf33b40b88a6f86e345951727aeb6dd7d8f650", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "aa18bb6d371e4e8cf34dab24babf33b40b88a6f86e345951727aeb6dd7d8f650", kill_on_drop: false }`
[INFO] [stdout] aa18bb6d371e4e8cf34dab24babf33b40b88a6f86e345951727aeb6dd7d8f650
