[INFO] crate fred 1.3.0 is already in cache
[INFO] checking fred-1.3.0 against master#209b2be09fcaff937480d1fbbe8b31646e361c7a for pr-70917
[INFO] extracting crate fred 1.3.0 into /workspace/builds/worker-1/source
[INFO] validating manifest of crates.io crate fred 1.3.0 on toolchain 209b2be09fcaff937480d1fbbe8b31646e361c7a
[INFO] running `"/workspace/cargo-home/bin/cargo" "+209b2be09fcaff937480d1fbbe8b31646e361c7a" "read-manifest" "--manifest-path" "Cargo.toml"`
[INFO] started tweaking crates.io crate fred 1.3.0
[INFO] finished tweaking crates.io crate fred 1.3.0
[INFO] tweaked toml for crates.io crate fred 1.3.0 written to /workspace/builds/worker-1/source/Cargo.toml
[INFO] crate crates.io crate fred 1.3.0 already has a lockfile, it will not be regenerated
[INFO] running `"/workspace/cargo-home/bin/cargo" "+209b2be09fcaff937480d1fbbe8b31646e361c7a" "fetch" "--locked" "--manifest-path" "Cargo.toml"`
[INFO] running `"docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "MAP_USER_ID=0" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--network" "none" "rustops/crates-build-env" "/opt/rustwide/cargo-home/bin/cargo" "+209b2be09fcaff937480d1fbbe8b31646e361c7a" "check" "--frozen" "--all" "--all-targets"`
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] [stdout] a45fdb8846da4bbe1eaf6720962dd7b6fa4b347c5b97f59d6c3cc603b21ac040
[INFO] running `"docker" "start" "-a" "a45fdb8846da4bbe1eaf6720962dd7b6fa4b347c5b97f59d6c3cc603b21ac040"`
[INFO] [stderr]    Compiling libc v0.2.49
[INFO] [stderr]     Checking cfg-if v0.1.6
[INFO] [stderr]    Compiling autocfg v0.1.2
[INFO] [stderr]     Checking futures v0.1.25
[INFO] [stderr]    Compiling byteorder v1.3.1
[INFO] [stderr]    Compiling arrayvec v0.4.10
[INFO] [stderr]     Checking memoffset v0.2.1
[INFO] [stderr]    Compiling num-traits v0.2.6
[INFO] [stderr]    Compiling regex v1.1.1
[INFO] [stderr]    Compiling num-integer v0.1.39
[INFO] [stderr]    Compiling crc16 v0.3.4
[INFO] [stderr]     Checking cookie-factory v0.2.4
[INFO] [stderr]     Checking rand_jitter v0.1.3
[INFO] [stderr]     Checking log v0.4.6
[INFO] [stderr]     Checking crossbeam-utils v0.6.5
[INFO] [stderr]     Checking regex-syntax v0.6.5
[INFO] [stderr]     Checking humantime v1.2.0
[INFO] [stderr]    Compiling rand_chacha v0.1.1
[INFO] [stderr]    Compiling rand_pcg v0.1.2
[INFO] [stderr]    Compiling rand v0.6.5
[INFO] [stderr]     Checking idna v0.1.5
[INFO] [stderr]    Compiling parking_lot_core v0.4.0
[INFO] [stderr]     Checking aho-corasick v0.6.10
[INFO] [stderr]     Checking nom v4.2.1
[INFO] [stderr]     Checking log v0.3.9
[INFO] [stderr]     Checking crossbeam-channel v0.3.8
[INFO] [stderr]     Checking base64 v0.9.3
[INFO] [stderr]     Checking iovec v0.1.2
[INFO] [stderr]     Checking rand_os v0.1.2
[INFO] [stderr]     Checking num_cpus v1.10.0
[INFO] [stderr]     Checking net2 v0.2.33
[INFO] [stderr]     Checking time v0.1.42
[INFO] [stderr]     Checking atty v0.2.11
[INFO] [stderr]     Checking rand v0.4.6
[INFO] [stderr]     Checking url v1.7.2
[INFO] [stderr]     Checking tokio-executor v0.1.6
[INFO] [stderr]     Checking tokio-sync v0.1.2
[INFO] [stderr]     Checking tokio-service v0.1.0
[INFO] [stderr]     Checking tokio-timer-patched v0.1.3
[INFO] [stderr]     Checking want v0.0.4
[INFO] [stderr]     Checking relay v0.1.1
[INFO] [stderr]     Checking bytes v0.4.11
[INFO] [stderr]     Checking crossbeam-epoch v0.7.1
[INFO] [stderr]     Checking float-cmp v0.4.0
[INFO] [stderr]     Checking futures-cpupool v0.1.8
[INFO] [stderr]     Checking mio v0.6.16
[INFO] [stderr]     Checking tokio-current-thread v0.1.4
[INFO] [stderr]     Checking tokio-timer v0.2.10
[INFO] [stderr]     Checking rand v0.3.23
[INFO] [stderr]     Checking crossbeam-deque v0.6.3
[INFO] [stderr]     Checking chrono v0.4.6
[INFO] [stderr]     Checking tokio-io v0.1.12
[INFO] [stderr]     Checking tokio-codec v0.1.1
[INFO] [stderr]     Checking mio-uds v0.6.7
[INFO] [stderr]     Checking parking_lot v0.7.1
[INFO] [stderr]     Checking tokio-reactor v0.1.8
[INFO] [stderr]     Checking crossbeam v0.6.0
[INFO] [stderr]     Checking env_logger v0.5.13
[INFO] [stderr]     Checking env_logger v0.6.1
[INFO] [stderr]     Checking tokio-threadpool v0.1.11
[INFO] [stderr]     Checking tokio-tcp v0.1.3
[INFO] [stderr]     Checking tokio-udp v0.1.3
[INFO] [stderr]     Checking tokio-uds v0.2.5
[INFO] [stderr]     Checking pretty_env_logger v0.2.5
[INFO] [stderr]     Checking pretty_env_logger v0.3.0
[INFO] [stderr]     Checking redis-protocol v0.1.2
[INFO] [stderr]     Checking tokio-fs v0.1.5
[INFO] [stderr]     Checking tokio v0.1.15
[INFO] [stderr]     Checking tokio-core v0.1.17
[INFO] [stderr]     Checking tokio-proto v0.1.1
[INFO] [stderr]     Checking hyper v0.11.27
[INFO] [stderr]     Checking fred v1.3.0 (/opt/rustwide/workdir)
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/utils.rs:129:57
[INFO] [stderr]     |
[INFO] [stderr] 129 | pub fn future_error<T: 'static>(err: RedisError) -> Box<Future<Item = T, Error = RedisError>> {
[INFO] [stderr]     |                                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item = T, Error = RedisError>`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/utils.rs:133:43
[INFO] [stderr]     |
[INFO] [stderr] 133 | pub fn future_ok<T: 'static>(d: T) -> Box<Future<Item = T, Error = RedisError>> {
[INFO] [stderr]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item = T, Error = RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/utils.rs:137:68
[INFO] [stderr]     |
[INFO] [stderr] 137 | pub fn future_error_generic<T: 'static, E: 'static>(err: E) -> Box<Future<Item=T, Error=E>> {
[INFO] [stderr]     |                                                                    ^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=T, Error=E>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/utils.rs:141:63
[INFO] [stderr]     |
[INFO] [stderr] 141 | pub fn future_ok_generic<T: 'static, E: 'static>(d: T) -> Box<Future<Item=T, Error=E>> {
[INFO] [stderr]     |                                                               ^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=T, Error=E>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/utils.rs:145:55
[INFO] [stderr]     |
[INFO] [stderr] 145 | pub fn stream_error<T: 'static>(e: RedisError) -> Box<Stream<Item=T, Error=RedisError>> {
[INFO] [stderr]     |                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Stream<Item=T, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/utils.rs:235:75
[INFO] [stderr]     |
[INFO] [stderr] 235 | pub fn request_response<F>(inner: &Arc<RedisClientInner>, func: F) -> Box<Future<Item=ProtocolFrame, Error=RedisError>>
[INFO] [stderr]     |                                                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=ProtocolFrame, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/utils.rs:261:83
[INFO] [stderr]     |
[INFO] [stderr] 261 | pub fn split(inner: &Arc<RedisClientInner>, handle: &Handle, timeout: u64) -> Box<Future<Item=Vec<(RedisClient, RedisConfig)>, Error=RedisError>> {
[INFO] [stderr]     |                                                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<(RedisClient, RedisConfig)>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/protocol/utils.rs:344:10
[INFO] [stderr]     |
[INFO] [stderr] 344 |   -> Box<Future<Item=Loop<(), (Handle, Arc<RedisClientInner>)>, Error=RedisError>>
[INFO] [stderr]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Loop<(), (Handle, Arc<RedisClientInner>)>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/multiplexer/types.rs:116:28
[INFO] [stderr]     |
[INFO] [stderr] 116 | pub type FrameStream = Box<Stream<Item=Frame, Error=RedisError>>;
[INFO] [stderr]     |                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Stream<Item=Frame, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/multiplexer/types.rs:291:43
[INFO] [stderr]     |
[INFO] [stderr] 291 |   pub fn quit(&self, frame: Frame) -> Box<Future<Item=(), Error=RedisError>> {
[INFO] [stderr]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/multiplexer/types.rs:331:91
[INFO] [stderr]     |
[INFO] [stderr] 331 |   pub fn write_command(&self, key: Option<String>, frame: Frame, no_cluster: bool) -> Box<Future<Item=(), Error=RedisError>> {
[INFO] [stderr]     |                                                                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/multiplexer/connection.rs:120:10
[INFO] [stderr]     |
[INFO] [stderr] 120 |   -> Box<Future<Item=(SplitSink<Framed<TcpStream, RedisCodec>>, SplitStream<Framed<TcpStream, RedisCodec>>), Error=RedisError>>
[INFO] [stderr]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(SplitSink<Framed<TcpStream, RedisCodec>>, SplitStream<Framed<TcpStream, RedisCodec>>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/multiplexer/connection.rs:170:10
[INFO] [stderr]     |
[INFO] [stderr] 170 |   -> Box<Future<Item=(SplitSink<Framed<TcpStream, RedisCodec>>, SplitStream<Framed<TcpStream, RedisCodec>>), Error=RedisError>>
[INFO] [stderr]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(SplitSink<Framed<TcpStream, RedisCodec>>, SplitStream<Framed<TcpStream, RedisCodec>>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/multiplexer/connection.rs:193:93
[INFO] [stderr]     |
[INFO] [stderr] 193 | pub fn request_response<T>(transport: Framed<T, RedisCodec>, request: &RedisCommand) -> Box<Future<Item=(Frame, Framed<T, RedisCodec>), Error=RedisError>>
[INFO] [stderr]     |                                                                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Frame, Framed<T, RedisCodec>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/multiplexer/connection.rs:212:100
[INFO] [stderr]     |
[INFO] [stderr] 212 | pub fn authenticate<T>(transport: Framed<T, RedisCodec>, name: String, key: Option<String>) -> Box<Future<Item=Framed<T, RedisCodec>, Error=RedisError>>
[INFO] [stderr]     |                                                                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Framed<T, RedisCodec>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/multiplexer/connection.rs:267:91
[INFO] [stderr]     |
[INFO] [stderr] 267 | pub fn create_initial_transport_tls(handle: Handle, inner: &Arc<RedisClientInner>) -> Box<Future<Item=Option<Framed<TcpStream, RedisCodec>>, Error=RedisError>> {
[INFO] [stderr]     |                                                                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Option<Framed<TcpStream, RedisCodec>>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/multiplexer/connection.rs:332:87
[INFO] [stderr]     |
[INFO] [stderr] 332 | pub fn create_initial_transport(handle: Handle, inner: &Arc<RedisClientInner>) -> Box<Future<Item=Option<Framed<TcpStream, RedisCodec>>, Error=RedisError>> {
[INFO] [stderr]     |                                                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Option<Framed<TcpStream, RedisCodec>>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/multiplexer/connection.rs:382:10
[INFO] [stderr]     |
[INFO] [stderr] 382 |   -> Box<Future<Item=Vec<(String, Framed<TcpStream, RedisCodec>)>, Error=RedisError>>
[INFO] [stderr]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<(String, Framed<TcpStream, RedisCodec>)>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/multiplexer/connection.rs:456:10
[INFO] [stderr]     |
[INFO] [stderr] 456 |   -> Box<Future<Item=Vec<(String, Framed<TcpStream, RedisCodec>)>, Error=RedisError>>
[INFO] [stderr]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<(String, Framed<TcpStream, RedisCodec>)>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/multiplexer/connection.rs:525:81
[INFO] [stderr]     |
[INFO] [stderr] 525 | fn read_cluster_cache_tls(handle: Handle, inner: &Arc<RedisClientInner>) -> Box<Future<Item=Frame, Error=RedisError>> {
[INFO] [stderr]     |                                                                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Frame, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/multiplexer/connection.rs:529:77
[INFO] [stderr]     |
[INFO] [stderr] 529 | fn read_cluster_cache(handle: Handle, inner: &Arc<RedisClientInner>) -> Box<Future<Item=Frame, Error=RedisError>> {
[INFO] [stderr]     |                                                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Frame, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/multiplexer/connection.rs:550:83
[INFO] [stderr]     |
[INFO] [stderr] 550 | pub fn build_cluster_cache(handle: &Handle, inner: &Arc<RedisClientInner>) -> Box<Future<Item=ClusterKeyCache, Error=RedisError>> {
[INFO] [stderr]     |                                                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=ClusterKeyCache, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/multiplexer/init.rs:134:10
[INFO] [stderr]     |
[INFO] [stderr] 134 |   -> Box<Future<Item=(Either<TlsTransports, TcpTransports>, ClusterKeyCache), Error=RedisError>>
[INFO] [stderr]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Either<TlsTransports, TcpTransports>, ClusterKeyCache), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/multiplexer/init.rs:156:10
[INFO] [stderr]     |
[INFO] [stderr] 156 |   -> Box<Future<Item=Either<SplitTlsTransport, SplitTcpTransport>, Error=RedisError>>
[INFO] [stderr]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Either<SplitTlsTransport, SplitTcpTransport>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/multiplexer/init.rs:166:10
[INFO] [stderr]     |
[INFO] [stderr] 166 |   -> Box<Future<Item=Either<SplitTlsTransport, SplitTcpTransport>, Error=RedisError>>
[INFO] [stderr]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Either<SplitTlsTransport, SplitTcpTransport>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/multiplexer/init.rs:178:125
[INFO] [stderr]     |
[INFO] [stderr] 178 | fn backoff_and_retry(inner: Arc<RedisClientInner>, handle: Handle, multiplexer: Multiplexer, force_no_backoff: bool) -> Box<Future<Item=Loop<InitState, InitState>, Error=RedisError>> {
[INFO] [stderr]     |                                                                                                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Loop<InitState, InitState>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/multiplexer/init.rs:204:137
[INFO] [stderr]     |
[INFO] [stderr] 204 | fn build_centralized_multiplexer(handle: Handle, inner: Arc<RedisClientInner>, multiplexer: Multiplexer, force_no_backoff: bool) -> Box<Future<Item=InitState, Error=RedisError>> {
[INFO] [stderr]     |                                                                                                                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=InitState, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/multiplexer/init.rs:307:135
[INFO] [stderr]     |
[INFO] [stderr] 307 | fn build_clustered_multiplexer(handle: Handle, inner: Arc<RedisClientInner>, multiplexer: Multiplexer, force_no_backoff: bool) -> Box<Future<Item=InitState, Error=RedisError>> {
[INFO] [stderr]     |                                                                                                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=InitState, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/multiplexer/init.rs:414:154
[INFO] [stderr]     |
[INFO] [stderr] 414 | fn rebuild_connection(handle: Handle, inner: Arc<RedisClientInner>, multiplexer: Multiplexer, force_no_backoff: bool, last_command: RedisCommand) -> Box<Future<Item=(Handle, Arc<RedisClientInner>, Multiplexer, Option<RedisError>), Error=RedisError>> {
[INFO] [stderr]     |                                                                                                                                                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Handle, Arc<RedisClientInner>, Multiplexer, Option<RedisError>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/multiplexer/init.rs:498:76
[INFO] [stderr]     |
[INFO] [stderr] 498 | fn create_commands_ft(handle: Handle, inner: Arc<RedisClientInner>) -> Box<Future<Item=Option<RedisError>, Error=RedisError>> {
[INFO] [stderr]     |                                                                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Option<RedisError>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/multiplexer/init.rs:611:70
[INFO] [stderr]     |
[INFO] [stderr] 611 | pub fn connect(handle: &Handle, inner: Arc<RedisClientInner>) -> Box<Future<Item=Option<RedisError>, Error=RedisError>> {
[INFO] [stderr]     |                                                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Option<RedisError>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/multiplexer/mod.rs:162:97
[INFO] [stderr]     |
[INFO] [stderr] 162 |   pub fn write_command(&self, inner: &Arc<RedisClientInner>, request: &mut RedisCommand) -> Box<Future<Item=(), Error=RedisError>> {
[INFO] [stderr]     |                                                                                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/multiplexer/mod.rs:192:31
[INFO] [stderr]     |
[INFO] [stderr] 192 |   pub fn listen(&self) -> Box<Future<Item=(), Error=()>> {
[INFO] [stderr]     |                               ^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(), Error=()>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/error.rs:172:30
[INFO] [stderr]     |
[INFO] [stderr] 172 |   fn cause(&self) -> Option<&Error> {
[INFO] [stderr]     |                              ^^^^^ help: use `dyn`: `dyn Error`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/client.rs:61:33
[INFO] [stderr]    |
[INFO] [stderr] 61 | pub type ConnectionFuture = Box<Future<Item=Option<RedisError>, Error=RedisError>>;
[INFO] [stderr]    |                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Option<RedisError>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/client.rs:266:37
[INFO] [stderr]     |
[INFO] [stderr] 266 |   pub fn on_reconnect(&self) -> Box<Stream<Item=Self, Error=RedisError>> {
[INFO] [stderr]     |                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Stream<Item=Self, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/client.rs:278:35
[INFO] [stderr]     |
[INFO] [stderr] 278 |   pub fn on_connect(&self) -> Box<Future<Item=Self, Error=RedisError>> {
[INFO] [stderr]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Self, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/client.rs:293:33
[INFO] [stderr]     |
[INFO] [stderr] 293 |   pub fn on_error(&self) -> Box<Stream<Item=RedisError, Error=RedisError>> {
[INFO] [stderr]     |                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Stream<Item=RedisError, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/client.rs:304:35
[INFO] [stderr]     |
[INFO] [stderr] 304 |   pub fn on_message(&self) -> Box<Stream<Item=(String, RedisValue), Error=RedisError>> {
[INFO] [stderr]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Stream<Item=(String, RedisValue), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/client.rs:319:55
[INFO] [stderr]     |
[INFO] [stderr] 319 |   pub fn split_cluster(&self, handle: &Handle) -> Box<Future<Item=Vec<(RedisClient, RedisConfig)>, Error=RedisError>> {
[INFO] [stderr]     |                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<(RedisClient, RedisConfig)>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/client.rs:332:113
[INFO] [stderr]     |
[INFO] [stderr] 332 |   pub fn scan<P: Into<String>>(&self, pattern: Option<P>, count: Option<usize>, _type: Option<ScanType>) -> Box<Stream<Item=ScanResult, Error=RedisError>> {
[INFO] [stderr]     |                                                                                                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Stream<Item=ScanResult, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/client.rs:339:116
[INFO] [stderr]     |
[INFO] [stderr] 339 |   pub fn hscan<K: Into<RedisKey>, P: Into<String>>(&self, key: K, pattern: Option<P>, count: Option<usize>) -> Box<Stream<Item=HScanResult, Error=RedisError>> {
[INFO] [stderr]     |                                                                                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Stream<Item=HScanResult, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/client.rs:346:116
[INFO] [stderr]     |
[INFO] [stderr] 346 |   pub fn sscan<K: Into<RedisKey>, P: Into<String>>(&self, key: K, pattern: Option<P>, count: Option<usize>) -> Box<Stream<Item=SScanResult, Error=RedisError>> {
[INFO] [stderr]     |                                                                                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Stream<Item=SScanResult, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/client.rs:353:116
[INFO] [stderr]     |
[INFO] [stderr] 353 |   pub fn zscan<K: Into<RedisKey>, P: Into<String>>(&self, key: K, pattern: Option<P>, count: Option<usize>) -> Box<Stream<Item=ZScanResult, Error=RedisError>> {
[INFO] [stderr]     |                                                                                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Stream<Item=ZScanResult, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/commands.rs:41:51
[INFO] [stderr]    |
[INFO] [stderr] 41 | pub fn quit(inner: &Arc<RedisClientInner>) -> Box<Future<Item=(), Error=RedisError>> {
[INFO] [stderr]    |                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/commands.rs:83:69
[INFO] [stderr]    |
[INFO] [stderr] 83 | pub fn flushall(inner: &Arc<RedisClientInner>, _async: bool) -> Box<Future<Item=String, Error=RedisError>> {
[INFO] [stderr]    |                                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=String, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/commands.rs:103:77
[INFO] [stderr]     |
[INFO] [stderr] 103 | pub fn get<K: Into<RedisKey>>(inner: &Arc<RedisClientInner>, key: K) -> Box<Future<Item=Option<RedisValue>, Error=RedisError>> {
[INFO] [stderr]     |                                                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Option<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/commands.rs:119:165
[INFO] [stderr]     |
[INFO] [stderr] 119 | pub fn set<K: Into<RedisKey>, V: Into<RedisValue>>(inner: &Arc<RedisClientInner>, key: K, value: V, expire: Option<Expiration>, options: Option<SetOptions>) -> Box<Future<Item=bool, Error=RedisError>> {
[INFO] [stderr]     |                                                                                                                                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=bool, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/commands.rs:142:61
[INFO] [stderr]     |
[INFO] [stderr] 142 | pub fn select(inner: &Arc<RedisClientInner>, db: u8) -> Box<Future<Item=(), Error=RedisError>> {
[INFO] [stderr]     |                                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/commands.rs:155:78
[INFO] [stderr]     |
[INFO] [stderr] 155 | pub fn info(inner: &Arc<RedisClientInner>, section: Option<InfoKind>) -> Box<Future<Item=String, Error=RedisError>> {
[INFO] [stderr]     |                                                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=String, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/commands.rs:182:82
[INFO] [stderr]     |
[INFO] [stderr] 182 | pub fn del<K: Into<MultipleKeys>>(inner: &Arc<RedisClientInner>, keys: K) -> Box<Future<Item=usize, Error=RedisError>> {
[INFO] [stderr]     |                                                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/commands.rs:200:85
[INFO] [stderr]     |
[INFO] [stderr] 200 | pub fn subscribe<T: Into<String>>(inner: &Arc<RedisClientInner>, channel: T) -> Box<Future<Item=usize, Error=RedisError>> {
[INFO] [stderr]     |                                                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/commands.rs:227:87
[INFO] [stderr]     |
[INFO] [stderr] 227 | pub fn unsubscribe<T: Into<String>>(inner: &Arc<RedisClientInner>, channel: T) -> Box<Future<Item=usize, Error=RedisError>> {
[INFO] [stderr]     |                                                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/commands.rs:254:116
[INFO] [stderr]     |
[INFO] [stderr] 254 | pub fn publish<T: Into<String>, V: Into<RedisValue>>(inner: &Arc<RedisClientInner>, channel: T, message: V) -> Box<Future<Item=i64, Error=RedisError>> {
[INFO] [stderr]     |                                                                                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=i64, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/commands.rs:275:79
[INFO] [stderr]     |
[INFO] [stderr] 275 | pub fn incr<K: Into<RedisKey>> (inner: &Arc<RedisClientInner>, key: K) -> Box<Future<Item=i64, Error=RedisError>>  {
[INFO] [stderr]     |                                                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=i64, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/commands.rs:290:91
[INFO] [stderr]     |
[INFO] [stderr] 290 | pub fn incrby<K: Into<RedisKey>>(inner: &Arc<RedisClientInner>, key: K, incr: i64) -> Box<Future<Item=i64, Error=RedisError>> {
[INFO] [stderr]     |                                                                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=i64, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/commands.rs:307:96
[INFO] [stderr]     |
[INFO] [stderr] 307 | pub fn incrbyfloat<K: Into<RedisKey>>(inner: &Arc<RedisClientInner>, key: K, incr: f64) -> Box<Future<Item=f64, Error=RedisError>> {
[INFO] [stderr]     |                                                                                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=f64, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/commands.rs:327:78
[INFO] [stderr]     |
[INFO] [stderr] 327 | pub fn decr<K: Into<RedisKey>>(inner: &Arc<RedisClientInner>, key: K) -> Box<Future<Item=i64, Error=RedisError>> {
[INFO] [stderr]     |                                                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=i64, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/commands.rs:344:111
[INFO] [stderr]     |
[INFO] [stderr] 344 | pub fn decrby<V: Into<RedisValue>, K: Into<RedisKey>>(inner: &Arc<RedisClientInner>, key: K, value: V) -> Box<Future<Item=i64, Error=RedisError>> {
[INFO] [stderr]     |                                                                                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=i64, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/commands.rs:363:51
[INFO] [stderr]     |
[INFO] [stderr] 363 | pub fn ping(inner: &Arc<RedisClientInner>) -> Box<Future<Item=String, Error=RedisError>> {
[INFO] [stderr]     |                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=String, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/commands.rs:388:78
[INFO] [stderr]     |
[INFO] [stderr] 388 | pub fn auth<V: Into<String>>(inner: &Arc<RedisClientInner>, value: V) -> Box<Future<Item=String, Error=RedisError>> {
[INFO] [stderr]     |                                                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=String, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/commands.rs:405:59
[INFO] [stderr]     |
[INFO] [stderr] 405 | pub fn bgrewriteaof(inner: &Arc<RedisClientInner>) -> Box<Future<Item=String, Error=RedisError>> {
[INFO] [stderr]     |                                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=String, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/commands.rs:420:53
[INFO] [stderr]     |
[INFO] [stderr] 420 | pub fn bgsave(inner: &Arc<RedisClientInner>) -> Box<Future<Item=String, Error=RedisError>> {
[INFO] [stderr]     |                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=String, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/commands.rs:435:58
[INFO] [stderr]     |
[INFO] [stderr] 435 | pub fn client_list(inner: &Arc<RedisClientInner>) -> Box<Future<Item=String, Error=RedisError>> {
[INFO] [stderr]     |                                                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=String, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/commands.rs:452:61
[INFO] [stderr]     |
[INFO] [stderr] 452 | pub fn client_getname(inner: &Arc<RedisClientInner>) -> Box<Future<Item=Option<String>, Error=RedisError>> {
[INFO] [stderr]     |                                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Option<String>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/commands.rs:465:87
[INFO] [stderr]     |
[INFO] [stderr] 465 | pub fn client_setname<V: Into<String>>(inner: &Arc<RedisClientInner>, name: V) -> Box<Future<Item=Option<String>, Error=RedisError>> {
[INFO] [stderr]     |                                                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Option<String>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/commands.rs:481:53
[INFO] [stderr]     |
[INFO] [stderr] 481 | pub fn dbsize(inner: &Arc<RedisClientInner>) -> Box<Future<Item=usize, Error=RedisError>> {
[INFO] [stderr]     |                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/commands.rs:496:78
[INFO] [stderr]     |
[INFO] [stderr] 496 | pub fn dump<K: Into<RedisKey>>(inner: &Arc<RedisClientInner>, key: K) -> Box<Future<Item=Option<String>, Error=RedisError>> {
[INFO] [stderr]     |                                                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Option<String>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/commands.rs:514:85
[INFO] [stderr]     |
[INFO] [stderr] 514 | pub fn exists<K: Into<MultipleKeys>>(inner: &Arc<RedisClientInner>, keys: K) -> Box<Future<Item=usize, Error=RedisError>> {
[INFO] [stderr]     |                                                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/commands.rs:533:94
[INFO] [stderr]     |
[INFO] [stderr] 533 | pub fn expire<K: Into<RedisKey>>(inner: &Arc<RedisClientInner>, key: K, seconds: i64) -> Box<Future<Item=bool, Error=RedisError>> {
[INFO] [stderr]     |                                                                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=bool, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/commands.rs:559:99
[INFO] [stderr]     |
[INFO] [stderr] 559 | pub fn expire_at<K: Into<RedisKey>>(inner: &Arc<RedisClientInner>, key: K, timestamp: i64) -> Box<Future<Item=bool, Error=RedisError>> {
[INFO] [stderr]     |                                                                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=bool, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/commands.rs:584:81
[INFO] [stderr]     |
[INFO] [stderr] 584 | pub fn persist<K: Into<RedisKey>>(inner: &Arc<RedisClientInner>, key: K) -> Box<Future<Item=bool, Error=RedisError>> {
[INFO] [stderr]     |                                                                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=bool, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/commands.rs:607:68
[INFO] [stderr]     |
[INFO] [stderr] 607 | pub fn flushdb(inner: &Arc<RedisClientInner>, _async: bool) -> Box<Future<Item=String, Error=RedisError>> {
[INFO] [stderr]     |                                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=String, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/commands.rs:628:109
[INFO] [stderr]     |
[INFO] [stderr] 628 | pub fn getrange<K: Into<RedisKey>> (inner: &Arc<RedisClientInner>, key: K, start: usize, end: usize) -> Box<Future<Item=String, Error=RedisError>> {
[INFO] [stderr]     |                                                                                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=String, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/commands.rs:653:112
[INFO] [stderr]     |
[INFO] [stderr] 653 | pub fn getset<V: Into<RedisValue>, K: Into<RedisKey>> (inner: &Arc<RedisClientInner>, key: K, value: V) -> Box<Future<Item=Option<RedisValue>, Error=RedisError>> {
[INFO] [stderr]     |                                                                                                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Option<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/commands.rs:670:113
[INFO] [stderr]     |
[INFO] [stderr] 670 | pub fn hdel<F: Into<MultipleKeys>, K: Into<RedisKey>> (inner: &Arc<RedisClientInner>, key: K, fields: F) -> Box<Future<Item=usize, Error=RedisError>> {
[INFO] [stderr]     |                                                                                                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/commands.rs:695:111
[INFO] [stderr]     |
[INFO] [stderr] 695 | pub fn hexists<F: Into<RedisKey>, K: Into<RedisKey>> (inner: &Arc<RedisClientInner>, key: K, field: F) -> Box<Future<Item=bool, Error=RedisError>> {
[INFO] [stderr]     |                                                                                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=bool, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/commands.rs:721:108
[INFO] [stderr]     |
[INFO] [stderr] 721 | pub fn hget<F: Into<RedisKey>, K: Into<RedisKey>> (inner: &Arc<RedisClientInner>, key: K, field: F) -> Box<Future<Item=Option<RedisValue>, Error=RedisError>> {
[INFO] [stderr]     |                                                                                                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Option<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/commands.rs:739:82
[INFO] [stderr]     |
[INFO] [stderr] 739 | pub fn hgetall<K: Into<RedisKey>> (inner: &Arc<RedisClientInner>, key: K) -> Box<Future<Item=HashMap<String, RedisValue>, Error=RedisError>> {
[INFO] [stderr]     |                                                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=HashMap<String, RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/commands.rs:767:122
[INFO] [stderr]     |
[INFO] [stderr] 767 | pub fn hincrby<F: Into<RedisKey>, K: Into<RedisKey>> (inner: &Arc<RedisClientInner>, key: K, field: F, incr: i64) -> Box<Future<Item=i64, Error=RedisError>> {
[INFO] [stderr]     |                                                                                                                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=i64, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/commands.rs:790:127
[INFO] [stderr]     |
[INFO] [stderr] 790 | pub fn hincrbyfloat<K: Into<RedisKey>, F: Into<RedisKey>> (inner: &Arc<RedisClientInner>, key: K, field: F, incr: f64) -> Box<Future<Item=f64, Error=RedisError>> {
[INFO] [stderr]     |                                                                                                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=f64, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/commands.rs:818:80
[INFO] [stderr]     |
[INFO] [stderr] 818 | pub fn hkeys<K: Into<RedisKey>> (inner: &Arc<RedisClientInner>, key: K) -> Box<Future<Item=Vec<String>, Error=RedisError>> {
[INFO] [stderr]     |                                                                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<String>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/commands.rs:843:79
[INFO] [stderr]     |
[INFO] [stderr] 843 | pub fn hlen<K: Into<RedisKey>> (inner: &Arc<RedisClientInner>, key: K) -> Box<Future<Item=usize, Error=RedisError>> {
[INFO] [stderr]     |                                                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/commands.rs:860:114
[INFO] [stderr]     |
[INFO] [stderr] 860 | pub fn hmget<F: Into<MultipleKeys>, K: Into<RedisKey>> (inner: &Arc<RedisClientInner>, key: K, fields: F) -> Box<Future<Item=Vec<RedisValue>, Error=RedisError>> {
[INFO] [stderr]     |                                                                                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/commands.rs:878:159
[INFO] [stderr]     |
[INFO] [stderr] 878 | pub fn hmset<V: Into<RedisValue>, F: Into<RedisKey> + Hash + Eq, K: Into<RedisKey>> (inner: &Arc<RedisClientInner>, key: K, mut values: HashMap<F, V>) -> Box<Future<Item=String, Error=RedisError>> {
[INFO] [stderr]     |                                                                                                                                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=String, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/commands.rs:904:139
[INFO] [stderr]     |
[INFO] [stderr] 904 | pub fn hset<K: Into<RedisKey>, F: Into<RedisKey>, V: Into<RedisValue>> (inner: &Arc<RedisClientInner>, key: K, field: F, value: V) -> Box<Future<Item=usize, Error=RedisError>> {
[INFO] [stderr]     |                                                                                                                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/commands.rs:926:141
[INFO] [stderr]     |
[INFO] [stderr] 926 | pub fn hsetnx<K: Into<RedisKey>, F: Into<RedisKey>, V: Into<RedisValue>> (inner: &Arc<RedisClientInner>, key: K, field: F, value: V) -> Box<Future<Item=usize, Error=RedisError>> {
[INFO] [stderr]     |                                                                                                                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/commands.rs:945:111
[INFO] [stderr]     |
[INFO] [stderr] 945 | pub fn hstrlen<K: Into<RedisKey>, F: Into<RedisKey>> (inner: &Arc<RedisClientInner>, key: K, field: F) -> Box<Future<Item=usize, Error=RedisError>> {
[INFO] [stderr]     |                                                                                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/commands.rs:964:80
[INFO] [stderr]     |
[INFO] [stderr] 964 | pub fn hvals<K: Into<RedisKey>> (inner: &Arc<RedisClientInner>, key: K) -> Box<Future<Item=Vec<RedisValue>, Error=RedisError>> {
[INFO] [stderr]     |                                                                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/commands.rs:974:79
[INFO] [stderr]     |
[INFO] [stderr] 974 | pub fn llen<K: Into<RedisKey>> (inner: &Arc<RedisClientInner>, key: K) -> Box<Future<Item=usize, Error=RedisError>> {
[INFO] [stderr]     |                                                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/commands.rs:991:111
[INFO] [stderr]     |
[INFO] [stderr] 991 | pub fn lpush<K: Into<RedisKey>, V: Into<RedisValue>> (inner: &Arc<RedisClientInner>, key: K, value: V) -> Box<Future<Item=usize, Error=RedisError>> {
[INFO] [stderr]     |                                                                                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/commands.rs:1011:78
[INFO] [stderr]      |
[INFO] [stderr] 1011 | pub fn lpop<K: Into<RedisKey>>(inner: &Arc<RedisClientInner>, key: K) -> Box<Future<Item=Option<RedisValue>, Error=RedisError>> {
[INFO] [stderr]      |                                                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Option<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/commands.rs:1031:114
[INFO] [stderr]      |
[INFO] [stderr] 1031 | pub fn sadd<K: Into<RedisKey>, V: Into<MultipleValues>>(inner: &Arc<RedisClientInner>, key: K, values: V) -> Box<Future<Item=usize, Error=RedisError>> {
[INFO] [stderr]      |                                                                                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/commands.rs:1056:114
[INFO] [stderr]      |
[INFO] [stderr] 1056 | pub fn srem<K: Into<RedisKey>, V: Into<MultipleValues>>(inner: &Arc<RedisClientInner>, key: K, values: V) -> Box<Future<Item=usize, Error=RedisError>> {
[INFO] [stderr]      |                                                                                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/commands.rs:1081:83
[INFO] [stderr]      |
[INFO] [stderr] 1081 | pub fn smembers<K: Into<RedisKey>> (inner: &Arc<RedisClientInner>, key: K) -> Box<Future<Item=Vec<RedisValue>, Error=RedisError>> {
[INFO] [stderr]      |                                                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/commands.rs:1091:93
[INFO] [stderr]      |
[INFO] [stderr] 1091 | pub fn psubscribe<K: Into<MultipleKeys>>(inner: &Arc<RedisClientInner>, patterns: K) -> Box<Future<Item=Vec<usize>, Error=RedisError>> {
[INFO] [stderr]      |                                                                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<usize>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/commands.rs:1113:95
[INFO] [stderr]      |
[INFO] [stderr] 1113 | pub fn punsubscribe<K: Into<MultipleKeys>>(inner: &Arc<RedisClientInner>, patterns: K) -> Box<Future<Item=Vec<usize>, Error=RedisError>> {
[INFO] [stderr]      |                                                                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<usize>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/commands.rs:1135:135
[INFO] [stderr]      |
[INFO] [stderr] 1135 | pub fn scan<P: Into<String>>(inner: &Arc<RedisClientInner>, pattern: Option<P>, count: Option<usize>, _type: Option<ScanType>) -> Box<Stream<Item=ScanResult, Error=RedisError>> {
[INFO] [stderr]      |                                                                                                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Stream<Item=ScanResult, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/commands.rs:1180:138
[INFO] [stderr]      |
[INFO] [stderr] 1180 | pub fn hscan<K: Into<RedisKey>, P: Into<String>>(inner: &Arc<RedisClientInner>, key: K, pattern: Option<P>, count: Option<usize>) -> Box<Stream<Item=HScanResult, Error=RedisError>> {
[INFO] [stderr]      |                                                                                                                                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Stream<Item=HScanResult, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/commands.rs:1231:138
[INFO] [stderr]      |
[INFO] [stderr] 1231 | pub fn sscan<K: Into<RedisKey>, P: Into<String>>(inner: &Arc<RedisClientInner>, key: K, pattern: Option<P>, count: Option<usize>) -> Box<Stream<Item=SScanResult, Error=RedisError>> {
[INFO] [stderr]      |                                                                                                                                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Stream<Item=SScanResult, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/commands.rs:1282:138
[INFO] [stderr]      |
[INFO] [stderr] 1282 | pub fn zscan<K: Into<RedisKey>, P: Into<String>>(inner: &Arc<RedisClientInner>, key: K, pattern: Option<P>, count: Option<usize>) -> Box<Stream<Item=ZScanResult, Error=RedisError>> {
[INFO] [stderr]      |                                                                                                                                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Stream<Item=ZScanResult, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/commands.rs:1333:83
[INFO] [stderr]      |
[INFO] [stderr] 1333 | pub fn mget<K: Into<MultipleKeys>>(inner: &Arc<RedisClientInner>, keys: K) -> Box<Future<Item=Vec<RedisValue>, Error=RedisError>> {
[INFO] [stderr]      |                                                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/commands.rs:1349:174
[INFO] [stderr]      |
[INFO] [stderr] 1349 | pub fn zadd<K: Into<RedisKey>, V: Into<MultipleZaddValues>>(inner: &Arc<RedisClientInner>, key: K, options: Option<SetOptions>, changed: bool, incr: bool, values: V) -> Box<Future<Item=RedisValue, Error=RedisError>> {
[INFO] [stderr]      |                                                                                                                                                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=RedisValue, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/commands.rs:1378:79
[INFO] [stderr]      |
[INFO] [stderr] 1378 | pub fn zcard<K: Into<RedisKey>>(inner: &Arc<RedisClientInner>, key: K) -> Box<Future<Item=usize, Error=RedisError>> {
[INFO] [stderr]      |                                                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/commands.rs:1395:100
[INFO] [stderr]      |
[INFO] [stderr] 1395 | pub fn zcount<K: Into<RedisKey>>(inner: &Arc<RedisClientInner>, key: K, min: f64, max: f64) -> Box<Future<Item=usize, Error=RedisError>> {
[INFO] [stderr]      |                                                                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/commands.rs:1415:133
[INFO] [stderr]      |
[INFO] [stderr] 1415 | pub fn zlexcount<K: Into<RedisKey>, M: Into<String>, N: Into<String>>(inner: &Arc<RedisClientInner>, key: K, min: M, max: N) -> Box<Future<Item=usize, Error=RedisError>> {
[INFO] [stderr]      |                                                                                                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/commands.rs:1434:123
[INFO] [stderr]      |
[INFO] [stderr] 1434 | pub fn zincrby<K: Into<RedisKey>, V: Into<RedisValue>>(inner: &Arc<RedisClientInner>, key: K, incr: f64, value: V) -> Box<Future<Item=f64, Error=RedisError>> {
[INFO] [stderr]      |                                                                                                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=f64, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/commands.rs:1450:122
[INFO] [stderr]      |
[INFO] [stderr] 1450 | pub fn zrange<K: Into<RedisKey>>(inner: &Arc<RedisClientInner>, key: K, start: i64, stop: i64, with_scores: bool) -> Box<Future<Item=Vec<RedisValue>, Error=RedisError>> {
[INFO] [stderr]      |                                                                                                                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/commands.rs:1466:166
[INFO] [stderr]      |
[INFO] [stderr] 1466 | pub fn zrangebylex<K: Into<RedisKey>, M: Into<String>, N: Into<String>>(inner: &Arc<RedisClientInner>, key: K, min: M, max: N, limit: Option<(usize, usize)>) -> Box<Future<Item=Vec<RedisValue>, Error=RedisError>> {
[INFO] [stderr]      |                                                                                                                                                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/commands.rs:1486:157
[INFO] [stderr]      |
[INFO] [stderr] 1486 | pub fn zrangebyscore<K: Into<RedisKey>>(inner: &Arc<RedisClientInner>, key: K, min: f64, max: f64, with_scores: bool, limit: Option<(usize, usize)>) -> Box<Future<Item=Vec<RedisValue>, Error=RedisError>> {
[INFO] [stderr]      |                                                                                                                                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/commands.rs:1514:103
[INFO] [stderr]      |
[INFO] [stderr] 1514 | pub fn zpopmax<K: Into<RedisKey>>(inner: &Arc<RedisClientInner>, key: K, count: Option<usize>) -> Box<Future<Item=Vec<RedisValue>, Error=RedisError>> {
[INFO] [stderr]      |                                                                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/commands.rs:1531:103
[INFO] [stderr]      |
[INFO] [stderr] 1531 | pub fn zpopmin<K: Into<RedisKey>>(inner: &Arc<RedisClientInner>, key: K, count: Option<usize>) -> Box<Future<Item=Vec<RedisValue>, Error=RedisError>> {
[INFO] [stderr]      |                                                                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/commands.rs:1548:110
[INFO] [stderr]      |
[INFO] [stderr] 1548 | pub fn zrank<K: Into<RedisKey>, V: Into<RedisValue>>(inner: &Arc<RedisClientInner>, key: K, value: V) -> Box<Future<Item=RedisValue, Error=RedisError>> {
[INFO] [stderr]      |                                                                                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=RedisValue, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/commands.rs:1559:114
[INFO] [stderr]      |
[INFO] [stderr] 1559 | pub fn zrem<K: Into<RedisKey>, V: Into<MultipleValues>>(inner: &Arc<RedisClientInner>, key: K, values: V) -> Box<Future<Item=usize, Error=RedisError>> {
[INFO] [stderr]      |                                                                                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/commands.rs:1584:138
[INFO] [stderr]      |
[INFO] [stderr] 1584 | pub fn zremrangebylex<K: Into<RedisKey>, M: Into<String>, N: Into<String>>(inner: &Arc<RedisClientInner>, key: K, min: M, max: N) -> Box<Future<Item=usize, Error=RedisError>> {
[INFO] [stderr]      |                                                                                                                                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/commands.rs:1603:112
[INFO] [stderr]      |
[INFO] [stderr] 1603 | pub fn zremrangebyrank<K: Into<RedisKey>>(inner: &Arc<RedisClientInner>, key: K, start: i64, stop: i64) -> Box<Future<Item=usize, Error=RedisError>> {
[INFO] [stderr]      |                                                                                                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/commands.rs:1620:110
[INFO] [stderr]      |
[INFO] [stderr] 1620 | pub fn zremrangebyscore<K: Into<RedisKey>>(inner: &Arc<RedisClientInner>, key: K, min: f64, max: f64) -> Box<Future<Item=usize, Error=RedisError>> {
[INFO] [stderr]      |                                                                                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/commands.rs:1643:125
[INFO] [stderr]      |
[INFO] [stderr] 1643 | pub fn zrevrange<K: Into<RedisKey>>(inner: &Arc<RedisClientInner>, key: K, start: i64, stop: i64, with_scores: bool) -> Box<Future<Item=Vec<RedisValue>, Error=RedisError>> {
[INFO] [stderr]      |                                                                                                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/commands.rs:1662:169
[INFO] [stderr]      |
[INFO] [stderr] 1662 | pub fn zrevrangebylex<K: Into<RedisKey>, M: Into<String>, N: Into<String>>(inner: &Arc<RedisClientInner>, key: K, max: M, min: N, limit: Option<(usize, usize)>) -> Box<Future<Item=Vec<RedisValue>, Error=RedisError>> {
[INFO] [stderr]      |                                                                                                                                                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/commands.rs:1685:160
[INFO] [stderr]      |
[INFO] [stderr] 1685 | pub fn zrevrangebyscore<K: Into<RedisKey>>(inner: &Arc<RedisClientInner>, key: K, max: f64, min: f64, with_scores: bool, limit: Option<(usize, usize)>) -> Box<Future<Item=Vec<RedisValue>, Error=RedisError>> {
[INFO] [stderr]      |                                                                                                                                                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/commands.rs:1711:113
[INFO] [stderr]      |
[INFO] [stderr] 1711 | pub fn zrevrank<K: Into<RedisKey>, V: Into<RedisValue>>(inner: &Arc<RedisClientInner>, key: K, value: V) -> Box<Future<Item=RedisValue, Error=RedisError>> {
[INFO] [stderr]      |                                                                                                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=RedisValue, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/commands.rs:1722:111
[INFO] [stderr]      |
[INFO] [stderr] 1722 | pub fn zscore<K: Into<RedisKey>, V: Into<RedisValue>>(inner: &Arc<RedisClientInner>, key: K, value: V) -> Box<Future<Item=RedisValue, Error=RedisError>> {
[INFO] [stderr]      |                                                                                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=RedisValue, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/commands.rs:1738:10
[INFO] [stderr]      |
[INFO] [stderr] 1738 |   -> Box<Future<Item=usize, Error=RedisError>>
[INFO] [stderr]      |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/commands.rs:1787:10
[INFO] [stderr]      |
[INFO] [stderr] 1787 |   -> Box<Future<Item=usize, Error=RedisError>>
[INFO] [stderr]      |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/commands.rs:1831:77
[INFO] [stderr]      |
[INFO] [stderr] 1831 | pub fn ttl<K: Into<RedisKey>>(inner: &Arc<RedisClientInner>, key: K) -> Box<Future<Item=i64, Error=RedisError>> {
[INFO] [stderr]      |                                                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=i64, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/commands.rs:1844:78
[INFO] [stderr]      |
[INFO] [stderr] 1844 | pub fn pttl<K: Into<RedisKey>>(inner: &Arc<RedisClientInner>, key: K) -> Box<Future<Item=i64, Error=RedisError>> {
[INFO] [stderr]      |                                                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=i64, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/borrowed.rs:46:25
[INFO] [stderr]    |
[INFO] [stderr] 46 |   fn quit(&self) -> Box<Future<Item=(), Error=RedisError>>;
[INFO] [stderr]    |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/borrowed.rs:48:43
[INFO] [stderr]    |
[INFO] [stderr] 48 |   fn flushall(&self, _async: bool) -> Box<Future<Item=String, Error=RedisError>>;
[INFO] [stderr]    |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=String, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/borrowed.rs:50:51
[INFO] [stderr]    |
[INFO] [stderr] 50 |   fn get<K: Into<RedisKey>>(&self, key: K) -> Box<Future<Item=Option<RedisValue>, Error=RedisError>>;
[INFO] [stderr]    |                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Option<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/borrowed.rs:52:139
[INFO] [stderr]    |
[INFO] [stderr] 52 |   fn set<K: Into<RedisKey>, V: Into<RedisValue>>(&self, key: K, value: V, expire: Option<Expiration>, options: Option<SetOptions>) -> Box<Future<Item=bool, Error=RedisError>>;
[INFO] [stderr]    |                                                                                                                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=bool, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/borrowed.rs:54:35
[INFO] [stderr]    |
[INFO] [stderr] 54 |   fn select(&self, db: u8) -> Box<Future<Item=(), Error=RedisError>>;
[INFO] [stderr]    |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/borrowed.rs:56:52
[INFO] [stderr]    |
[INFO] [stderr] 56 |   fn info(&self, section: Option<InfoKind>) -> Box<Future<Item=String, Error=RedisError>>;
[INFO] [stderr]    |                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=String, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/borrowed.rs:58:56
[INFO] [stderr]    |
[INFO] [stderr] 58 |   fn del<K: Into<MultipleKeys>>(&self, keys: K) -> Box<Future<Item=usize, Error=RedisError>>;
[INFO] [stderr]    |                                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/borrowed.rs:60:59
[INFO] [stderr]    |
[INFO] [stderr] 60 |   fn subscribe<T: Into<String>>(&self, channel: T) -> Box<Future<Item=usize, Error=RedisError>>;
[INFO] [stderr]    |                                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/borrowed.rs:62:61
[INFO] [stderr]    |
[INFO] [stderr] 62 |   fn unsubscribe<T: Into<String>>(&self, channel: T) -> Box<Future<Item=usize, Error=RedisError>>;
[INFO] [stderr]    |                                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/borrowed.rs:64:90
[INFO] [stderr]    |
[INFO] [stderr] 64 |   fn publish<T: Into<String>, V: Into<RedisValue>>(&self, channel: T, message: V) -> Box<Future<Item=i64, Error=RedisError>>;
[INFO] [stderr]    |                                                                                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=i64, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/borrowed.rs:66:52
[INFO] [stderr]    |
[INFO] [stderr] 66 |   fn decr<K: Into<RedisKey>>(&self, key: K) -> Box<Future<Item=i64, Error=RedisError>>;
[INFO] [stderr]    |                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=i64, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/borrowed.rs:68:85
[INFO] [stderr]    |
[INFO] [stderr] 68 |   fn decrby<K: Into<RedisKey>, V: Into<RedisValue>>(&self, key: K, value: V) -> Box<Future<Item=i64, Error=RedisError>>;
[INFO] [stderr]    |                                                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=i64, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/borrowed.rs:70:53
[INFO] [stderr]    |
[INFO] [stderr] 70 |   fn incr<K: Into<RedisKey>> (&self, key: K) -> Box<Future<Item=i64, Error=RedisError>>;
[INFO] [stderr]    |                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=i64, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/borrowed.rs:72:65
[INFO] [stderr]    |
[INFO] [stderr] 72 |   fn incrby<K: Into<RedisKey>>(&self, key: K, incr: i64) -> Box<Future<Item=i64, Error=RedisError>>;
[INFO] [stderr]    |                                                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=i64, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/borrowed.rs:74:70
[INFO] [stderr]    |
[INFO] [stderr] 74 |   fn incrbyfloat<K: Into<RedisKey>>(&self, key: K, incr: f64) -> Box<Future<Item=f64, Error=RedisError>>;
[INFO] [stderr]    |                                                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=f64, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/borrowed.rs:76:25
[INFO] [stderr]    |
[INFO] [stderr] 76 |   fn ping(&self) -> Box<Future<Item=String, Error=RedisError>>;
[INFO] [stderr]    |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=String, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/borrowed.rs:78:52
[INFO] [stderr]    |
[INFO] [stderr] 78 |   fn auth<V: Into<String>>(&self, value: V) -> Box<Future<Item=String, Error=RedisError>>;
[INFO] [stderr]    |                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=String, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/borrowed.rs:80:33
[INFO] [stderr]    |
[INFO] [stderr] 80 |   fn bgrewriteaof(&self) -> Box<Future<Item=String, Error=RedisError>>;
[INFO] [stderr]    |                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=String, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/borrowed.rs:82:27
[INFO] [stderr]    |
[INFO] [stderr] 82 |   fn bgsave(&self) -> Box<Future<Item=String, Error=RedisError>>;
[INFO] [stderr]    |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=String, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/borrowed.rs:84:32
[INFO] [stderr]    |
[INFO] [stderr] 84 |   fn client_list(&self) -> Box<Future<Item=String, Error=RedisError>>;
[INFO] [stderr]    |                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=String, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/borrowed.rs:86:35
[INFO] [stderr]    |
[INFO] [stderr] 86 |   fn client_getname(&self) -> Box<Future<Item=Option<String>, Error=RedisError>>;
[INFO] [stderr]    |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Option<String>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/borrowed.rs:88:61
[INFO] [stderr]    |
[INFO] [stderr] 88 |   fn client_setname<V: Into<String>>(&self, name: V) -> Box<Future<Item=Option<String>, Error=RedisError>>;
[INFO] [stderr]    |                                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Option<String>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/borrowed.rs:90:27
[INFO] [stderr]    |
[INFO] [stderr] 90 |   fn dbsize(&self) -> Box<Future<Item=usize, Error=RedisError>>;
[INFO] [stderr]    |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/borrowed.rs:92:52
[INFO] [stderr]    |
[INFO] [stderr] 92 |   fn dump<K: Into<RedisKey>>(&self, key: K) -> Box<Future<Item=Option<String>, Error=RedisError>>;
[INFO] [stderr]    |                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Option<String>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/borrowed.rs:94:59
[INFO] [stderr]    |
[INFO] [stderr] 94 |   fn exists<K: Into<MultipleKeys>>(&self, keys: K) -> Box<Future<Item=usize, Error=RedisError>>;
[INFO] [stderr]    |                                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/borrowed.rs:96:68
[INFO] [stderr]    |
[INFO] [stderr] 96 |   fn expire<K: Into<RedisKey>>(&self, key: K, seconds: i64) -> Box<Future<Item=bool, Error=RedisError>>;
[INFO] [stderr]    |                                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=bool, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/borrowed.rs:98:73
[INFO] [stderr]    |
[INFO] [stderr] 98 |   fn expire_at<K: Into<RedisKey>>(&self, key: K, timestamp: i64) -> Box<Future<Item=bool, Error=RedisError>>;
[INFO] [stderr]    |                                                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=bool, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:100:55
[INFO] [stderr]     |
[INFO] [stderr] 100 |   fn persist<K: Into<RedisKey>>(&self, key: K) -> Box<Future<Item=bool, Error=RedisError>>;
[INFO] [stderr]     |                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=bool, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:102:42
[INFO] [stderr]     |
[INFO] [stderr] 102 |   fn flushdb(&self, _async: bool) -> Box<Future<Item=String, Error=RedisError>>;
[INFO] [stderr]     |                                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=String, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:104:82
[INFO] [stderr]     |
[INFO] [stderr] 104 |   fn getrange<K: Into<RedisKey>>(&self, key: K, start: usize, end: usize) -> Box<Future<Item=String, Error=RedisError>>;
[INFO] [stderr]     |                                                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=String, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:106:85
[INFO] [stderr]     |
[INFO] [stderr] 106 |   fn getset<V: Into<RedisValue>, K: Into<RedisKey>>(&self, key: K, value: V) -> Box<Future<Item=Option<RedisValue>, Error=RedisError>>;
[INFO] [stderr]     |                                                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Option<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:108:86
[INFO] [stderr]     |
[INFO] [stderr] 108 |   fn hdel<F: Into<MultipleKeys>, K: Into<RedisKey>>(&self, key: K, fields: F) -> Box<Future<Item=usize, Error=RedisError>>;
[INFO] [stderr]     |                                                                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:110:84
[INFO] [stderr]     |
[INFO] [stderr] 110 |   fn hexists<F: Into<RedisKey>, K: Into<RedisKey>>(&self, key: K, field: F) -> Box<Future<Item=bool, Error=RedisError>>;
[INFO] [stderr]     |                                                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=bool, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:112:81
[INFO] [stderr]     |
[INFO] [stderr] 112 |   fn hget<F: Into<RedisKey>, K: Into<RedisKey>>(&self, key: K, field: F) -> Box<Future<Item=Option<RedisValue>, Error=RedisError>>;
[INFO] [stderr]     |                                                                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Option<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:114:55
[INFO] [stderr]     |
[INFO] [stderr] 114 |   fn hgetall<K: Into<RedisKey>>(&self, key: K) -> Box<Future<Item=HashMap<String, RedisValue>, Error=RedisError>>;
[INFO] [stderr]     |                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=HashMap<String, RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:116:95
[INFO] [stderr]     |
[INFO] [stderr] 116 |   fn hincrby<F: Into<RedisKey>, K: Into<RedisKey>>(&self, key: K, field: F, incr: i64) -> Box<Future<Item=i64, Error=RedisError>>;
[INFO] [stderr]     |                                                                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=i64, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:118:100
[INFO] [stderr]     |
[INFO] [stderr] 118 |   fn hincrbyfloat<K: Into<RedisKey>, F: Into<RedisKey>>(&self, key: K, field: F, incr: f64) -> Box<Future<Item=f64, Error=RedisError>>;
[INFO] [stderr]     |                                                                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=f64, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:120:53
[INFO] [stderr]     |
[INFO] [stderr] 120 |   fn hkeys<K: Into<RedisKey>>(&self, key: K) -> Box<Future<Item=Vec<String>, Error=RedisError>>;
[INFO] [stderr]     |                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<String>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:122:52
[INFO] [stderr]     |
[INFO] [stderr] 122 |   fn hlen<K: Into<RedisKey>>(&self, key: K) -> Box<Future<Item=usize, Error=RedisError>>;
[INFO] [stderr]     |                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:124:87
[INFO] [stderr]     |
[INFO] [stderr] 124 |   fn hmget<F: Into<MultipleKeys>, K: Into<RedisKey>>(&self, key: K, fields: F) -> Box<Future<Item=Vec<RedisValue>, Error=RedisError>>;
[INFO] [stderr]     |                                                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:126:128
[INFO] [stderr]     |
[INFO] [stderr] 126 |   fn hmset<V: Into<RedisValue>, F: Into<RedisKey> + Hash + Eq, K: Into<RedisKey>>(&self, key: K, values: HashMap<F, V>) -> Box<Future<Item=String, Error=RedisError>>;
[INFO] [stderr]     |                                                                                                                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=String, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:128:112
[INFO] [stderr]     |
[INFO] [stderr] 128 |   fn hset<K: Into<RedisKey>, F: Into<RedisKey>, V: Into<RedisValue>>(&self, key: K, field: F, value: V) -> Box<Future<Item=usize, Error=RedisError>>;
[INFO] [stderr]     |                                                                                                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:130:114
[INFO] [stderr]     |
[INFO] [stderr] 130 |   fn hsetnx<K: Into<RedisKey>, F: Into<RedisKey>, V: Into<RedisValue>>(&self, key: K, field: F, value: V) -> Box<Future<Item=usize, Error=RedisError>>;
[INFO] [stderr]     |                                                                                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:132:84
[INFO] [stderr]     |
[INFO] [stderr] 132 |   fn hstrlen<K: Into<RedisKey>, F: Into<RedisKey>>(&self, key: K, field: F) -> Box<Future<Item=usize, Error=RedisError>>;
[INFO] [stderr]     |                                                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:134:53
[INFO] [stderr]     |
[INFO] [stderr] 134 |   fn hvals<K: Into<RedisKey>>(&self, key: K) -> Box<Future<Item=Vec<RedisValue>, Error=RedisError>>;
[INFO] [stderr]     |                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:136:52
[INFO] [stderr]     |
[INFO] [stderr] 136 |   fn llen<K: Into<RedisKey>>(&self, key: K) -> Box<Future<Item=usize, Error=RedisError>>;
[INFO] [stderr]     |                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:138:84
[INFO] [stderr]     |
[INFO] [stderr] 138 |   fn lpush<K: Into<RedisKey>, V: Into<RedisValue>>(&self, key: K, value: V) -> Box<Future<Item=usize, Error=RedisError>>;
[INFO] [stderr]     |                                                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:140:52
[INFO] [stderr]     |
[INFO] [stderr] 140 |   fn lpop<K: Into<RedisKey>>(&self, key: K) -> Box<Future<Item=Option<RedisValue>, Error=RedisError>>;
[INFO] [stderr]     |                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Option<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:142:88
[INFO] [stderr]     |
[INFO] [stderr] 142 |   fn sadd<K: Into<RedisKey>, V: Into<MultipleValues>>(&self, key: K, values: V) -> Box<Future<Item=usize, Error=RedisError>>;
[INFO] [stderr]     |                                                                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:144:88
[INFO] [stderr]     |
[INFO] [stderr] 144 |   fn srem<K: Into<RedisKey>, V: Into<MultipleValues>>(&self, key: K, values: V) -> Box<Future<Item=usize, Error=RedisError>>;
[INFO] [stderr]     |                                                                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:146:56
[INFO] [stderr]     |
[INFO] [stderr] 146 |   fn smembers<K: Into<RedisKey>>(&self, key: K) -> Box<Future<Item=Vec<RedisValue>, Error=RedisError>>;
[INFO] [stderr]     |                                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:148:67
[INFO] [stderr]     |
[INFO] [stderr] 148 |   fn psubscribe<K: Into<MultipleKeys>>(&self, patterns: K) -> Box<Future<Item=Vec<usize>, Error=RedisError>>;
[INFO] [stderr]     |                                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<usize>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:150:69
[INFO] [stderr]     |
[INFO] [stderr] 150 |   fn punsubscribe<K: Into<MultipleKeys>>(&self, patterns: K) -> Box<Future<Item=Vec<usize>, Error=RedisError>>;
[INFO] [stderr]     |                                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<usize>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:152:57
[INFO] [stderr]     |
[INFO] [stderr] 152 |   fn mget<K: Into<MultipleKeys>>(&self, keys: K) -> Box<Future<Item=Vec<RedisValue>, Error=RedisError>>;
[INFO] [stderr]     |                                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:154:148
[INFO] [stderr]     |
[INFO] [stderr] 154 |   fn zadd<K: Into<RedisKey>, V: Into<MultipleZaddValues>>(&self, key: K, options: Option<SetOptions>, changed: bool, incr: bool, values: V) -> Box<Future<Item=RedisValue, Error=RedisError>>;
[INFO] [stderr]     |                                                                                                                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=RedisValue, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:156:53
[INFO] [stderr]     |
[INFO] [stderr] 156 |   fn zcard<K: Into<RedisKey>>(&self, key: K) -> Box<Future<Item=usize, Error=RedisError>>;
[INFO] [stderr]     |                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:158:74
[INFO] [stderr]     |
[INFO] [stderr] 158 |   fn zcount<K: Into<RedisKey>>(&self, key: K, min: f64, max: f64) -> Box<Future<Item=usize, Error=RedisError>>;
[INFO] [stderr]     |                                                                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:160:107
[INFO] [stderr]     |
[INFO] [stderr] 160 |   fn zlexcount<K: Into<RedisKey>, M: Into<String>, N: Into<String>>(&self, key: K, min: M, max: N) -> Box<Future<Item=usize, Error=RedisError>>;
[INFO] [stderr]     |                                                                                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:162:97
[INFO] [stderr]     |
[INFO] [stderr] 162 |   fn zincrby<K: Into<RedisKey>, V: Into<RedisValue>>(&self, key: K, incr: f64, value: V) -> Box<Future<Item=f64, Error=RedisError>>;
[INFO] [stderr]     |                                                                                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=f64, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:164:96
[INFO] [stderr]     |
[INFO] [stderr] 164 |   fn zrange<K: Into<RedisKey>>(&self, key: K, start: i64, stop: i64, with_scores: bool) -> Box<Future<Item=Vec<RedisValue>, Error=RedisError>>;
[INFO] [stderr]     |                                                                                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:166:140
[INFO] [stderr]     |
[INFO] [stderr] 166 |   fn zrangebylex<K: Into<RedisKey>, M: Into<String>, N: Into<String>>(&self, key: K, min: M, max: N, limit: Option<(usize, usize)>) -> Box<Future<Item=Vec<RedisValue>, Error=RedisError>>;
[INFO] [stderr]     |                                                                                                                                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:168:131
[INFO] [stderr]     |
[INFO] [stderr] 168 |   fn zrangebyscore<K: Into<RedisKey>>(&self, key: K, min: f64, max: f64, with_scores: bool, limit: Option<(usize, usize)>) -> Box<Future<Item=Vec<RedisValue>, Error=RedisError>>;
[INFO] [stderr]     |                                                                                                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:170:77
[INFO] [stderr]     |
[INFO] [stderr] 170 |   fn zpopmax<K: Into<RedisKey>>(&self, key: K, count: Option<usize>) -> Box<Future<Item=Vec<RedisValue>, Error=RedisError>>;
[INFO] [stderr]     |                                                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:172:77
[INFO] [stderr]     |
[INFO] [stderr] 172 |   fn zpopmin<K: Into<RedisKey>>(&self, key: K, count: Option<usize>) -> Box<Future<Item=Vec<RedisValue>, Error=RedisError>>;
[INFO] [stderr]     |                                                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:174:84
[INFO] [stderr]     |
[INFO] [stderr] 174 |   fn zrank<K: Into<RedisKey>, V: Into<RedisValue>>(&self, key: K, value: V) -> Box<Future<Item=RedisValue, Error=RedisError>>;
[INFO] [stderr]     |                                                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=RedisValue, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:176:88
[INFO] [stderr]     |
[INFO] [stderr] 176 |   fn zrem<K: Into<RedisKey>, V: Into<MultipleValues>>(&self, key: K, values: V) -> Box<Future<Item=usize, Error=RedisError>>;
[INFO] [stderr]     |                                                                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:178:112
[INFO] [stderr]     |
[INFO] [stderr] 178 |   fn zremrangebylex<K: Into<RedisKey>, M: Into<String>, N: Into<String>>(&self, key: K, min: M, max: N) -> Box<Future<Item=usize, Error=RedisError>>;
[INFO] [stderr]     |                                                                                                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:180:86
[INFO] [stderr]     |
[INFO] [stderr] 180 |   fn zremrangebyrank<K: Into<RedisKey>>(&self, key: K, start: i64, stop: i64) -> Box<Future<Item=usize, Error=RedisError>>;
[INFO] [stderr]     |                                                                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:182:84
[INFO] [stderr]     |
[INFO] [stderr] 182 |   fn zremrangebyscore<K: Into<RedisKey>>(&self, key: K, min: f64, max: f64) -> Box<Future<Item=usize, Error=RedisError>>;
[INFO] [stderr]     |                                                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:184:99
[INFO] [stderr]     |
[INFO] [stderr] 184 |   fn zrevrange<K: Into<RedisKey>>(&self, key: K, start: i64, stop: i64, with_scores: bool) -> Box<Future<Item=Vec<RedisValue>, Error=RedisError>>;
[INFO] [stderr]     |                                                                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:186:143
[INFO] [stderr]     |
[INFO] [stderr] 186 |   fn zrevrangebylex<K: Into<RedisKey>, M: Into<String>, N: Into<String>>(&self, key: K, max: M, min: N, limit: Option<(usize, usize)>) -> Box<Future<Item=Vec<RedisValue>, Error=RedisError>>;
[INFO] [stderr]     |                                                                                                                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:188:134
[INFO] [stderr]     |
[INFO] [stderr] 188 |   fn zrevrangebyscore<K: Into<RedisKey>>(&self, key: K, max: f64, min: f64, with_scores: bool, limit: Option<(usize, usize)>) -> Box<Future<Item=Vec<RedisValue>, Error=RedisError>>;
[INFO] [stderr]     |                                                                                                                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:190:87
[INFO] [stderr]     |
[INFO] [stderr] 190 |   fn zrevrank<K: Into<RedisKey>, V: Into<RedisValue>>(&self, key: K, value: V) -> Box<Future<Item=RedisValue, Error=RedisError>>;
[INFO] [stderr]     |                                                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=RedisValue, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:192:85
[INFO] [stderr]     |
[INFO] [stderr] 192 |   fn zscore<K: Into<RedisKey>, V: Into<RedisValue>>(&self, key: K, value: V) -> Box<Future<Item=RedisValue, Error=RedisError>>;
[INFO] [stderr]     |                                                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=RedisValue, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:199:12
[INFO] [stderr]     |
[INFO] [stderr] 199 |     -> Box<Future<Item=usize, Error=RedisError>>;
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:206:12
[INFO] [stderr]     |
[INFO] [stderr] 206 |     -> Box<Future<Item=usize, Error=RedisError>>;
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:208:51
[INFO] [stderr]     |
[INFO] [stderr] 208 |   fn ttl<K: Into<RedisKey>>(&self, key: K) -> Box<Future<Item=i64, Error=RedisError>>;
[INFO] [stderr]     |                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=i64, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:210:52
[INFO] [stderr]     |
[INFO] [stderr] 210 |   fn pttl<K: Into<RedisKey>>(&self, key: K) -> Box<Future<Item=i64, Error=RedisError>>;
[INFO] [stderr]     |                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=i64, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:227:25
[INFO] [stderr]     |
[INFO] [stderr] 227 |   fn quit(&self) -> Box<Future<Item=(), Error=RedisError>> {
[INFO] [stderr]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:235:43
[INFO] [stderr]     |
[INFO] [stderr] 235 |   fn flushall(&self, _async: bool) -> Box<Future<Item=String, Error=RedisError>> {
[INFO] [stderr]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=String, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:243:139
[INFO] [stderr]     |
[INFO] [stderr] 243 |   fn set<K: Into<RedisKey>, V: Into<RedisValue>>(&self, key: K, value: V, expire: Option<Expiration>, options: Option<SetOptions>) -> Box<Future<Item=bool, Error=RedisError>> {
[INFO] [stderr]     |                                                                                                                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=bool, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:250:51
[INFO] [stderr]     |
[INFO] [stderr] 250 |   fn get<K: Into<RedisKey>>(&self, key: K) -> Box<Future<Item=Option<RedisValue>, Error=RedisError>> {
[INFO] [stderr]     |                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Option<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:257:35
[INFO] [stderr]     |
[INFO] [stderr] 257 |   fn select(&self, db: u8) -> Box<Future<Item=(), Error=RedisError>> {
[INFO] [stderr]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:264:52
[INFO] [stderr]     |
[INFO] [stderr] 264 |   fn info(&self, section: Option<InfoKind>) -> Box<Future<Item=String, Error=RedisError>> {
[INFO] [stderr]     |                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=String, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:272:56
[INFO] [stderr]     |
[INFO] [stderr] 272 |   fn del<K: Into<MultipleKeys>>(&self, keys: K) -> Box<Future<Item=usize, Error=RedisError>> {
[INFO] [stderr]     |                                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:281:59
[INFO] [stderr]     |
[INFO] [stderr] 281 |   fn subscribe<T: Into<String>>(&self, channel: T) -> Box<Future<Item=usize, Error=RedisError>> {
[INFO] [stderr]     |                                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:288:61
[INFO] [stderr]     |
[INFO] [stderr] 288 |   fn unsubscribe<T: Into<String>>(&self, channel: T) -> Box<Future<Item=usize, Error=RedisError>> {
[INFO] [stderr]     |                                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:295:90
[INFO] [stderr]     |
[INFO] [stderr] 295 |   fn publish<T: Into<String>, V: Into<RedisValue>>(&self, channel: T, message: V) -> Box<Future<Item=i64, Error=RedisError>> {
[INFO] [stderr]     |                                                                                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=i64, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:303:52
[INFO] [stderr]     |
[INFO] [stderr] 303 |   fn decr<K: Into<RedisKey>>(&self, key: K) -> Box<Future<Item=i64, Error=RedisError>> {
[INFO] [stderr]     |                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=i64, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:311:85
[INFO] [stderr]     |
[INFO] [stderr] 311 |   fn decrby<K: Into<RedisKey>, V: Into<RedisValue>>(&self, key: K, value: V) -> Box<Future<Item=i64, Error=RedisError>> {
[INFO] [stderr]     |                                                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=i64, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:319:53
[INFO] [stderr]     |
[INFO] [stderr] 319 |   fn incr<K: Into<RedisKey>> (&self, key: K) -> Box<Future<Item=i64, Error=RedisError>> {
[INFO] [stderr]     |                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=i64, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:327:65
[INFO] [stderr]     |
[INFO] [stderr] 327 |   fn incrby<K: Into<RedisKey>>(&self, key: K, incr: i64) -> Box<Future<Item=i64, Error=RedisError>> {
[INFO] [stderr]     |                                                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=i64, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:335:70
[INFO] [stderr]     |
[INFO] [stderr] 335 |   fn incrbyfloat<K: Into<RedisKey>>(&self, key: K, incr: f64) -> Box<Future<Item=f64, Error=RedisError>> {
[INFO] [stderr]     |                                                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=f64, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:342:25
[INFO] [stderr]     |
[INFO] [stderr] 342 |   fn ping(&self) -> Box<Future<Item=String, Error=RedisError>> {
[INFO] [stderr]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=String, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:349:52
[INFO] [stderr]     |
[INFO] [stderr] 349 |   fn auth<V: Into<String>>(&self, value: V) -> Box<Future<Item=String, Error=RedisError>> {
[INFO] [stderr]     |                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=String, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:356:33
[INFO] [stderr]     |
[INFO] [stderr] 356 |   fn bgrewriteaof(&self) -> Box<Future<Item=String, Error=RedisError>> {
[INFO] [stderr]     |                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=String, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:363:27
[INFO] [stderr]     |
[INFO] [stderr] 363 |   fn bgsave(&self) -> Box<Future<Item=String, Error=RedisError>> {
[INFO] [stderr]     |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=String, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:370:32
[INFO] [stderr]     |
[INFO] [stderr] 370 |   fn client_list(&self) -> Box<Future<Item=String, Error=RedisError>> {
[INFO] [stderr]     |                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=String, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:377:35
[INFO] [stderr]     |
[INFO] [stderr] 377 |   fn client_getname(&self) -> Box<Future<Item=Option<String>, Error=RedisError>> {
[INFO] [stderr]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Option<String>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:384:61
[INFO] [stderr]     |
[INFO] [stderr] 384 |   fn client_setname<V: Into<String>>(&self, name: V) -> Box<Future<Item=Option<String>, Error=RedisError>> {
[INFO] [stderr]     |                                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Option<String>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:391:27
[INFO] [stderr]     |
[INFO] [stderr] 391 |   fn dbsize(&self) -> Box<Future<Item=usize, Error=RedisError>> {
[INFO] [stderr]     |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:399:52
[INFO] [stderr]     |
[INFO] [stderr] 399 |   fn dump<K: Into<RedisKey>>(&self, key: K) -> Box<Future<Item=Option<String>, Error=RedisError>> {
[INFO] [stderr]     |                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Option<String>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:406:59
[INFO] [stderr]     |
[INFO] [stderr] 406 |   fn exists<K: Into<MultipleKeys>>(&self, keys: K) -> Box<Future<Item=usize, Error=RedisError>> {
[INFO] [stderr]     |                                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:414:68
[INFO] [stderr]     |
[INFO] [stderr] 414 |   fn expire<K: Into<RedisKey>>(&self, key: K, seconds: i64) -> Box<Future<Item=bool, Error=RedisError>> {
[INFO] [stderr]     |                                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=bool, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:422:73
[INFO] [stderr]     |
[INFO] [stderr] 422 |   fn expire_at<K: Into<RedisKey>>(&self, key: K, timestamp: i64) -> Box<Future<Item=bool, Error=RedisError>> {
[INFO] [stderr]     |                                                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=bool, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:431:55
[INFO] [stderr]     |
[INFO] [stderr] 431 |   fn persist<K: Into<RedisKey>>(&self, key: K) -> Box<Future<Item=bool, Error=RedisError>>{
[INFO] [stderr]     |                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=bool, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:439:42
[INFO] [stderr]     |
[INFO] [stderr] 439 |   fn flushdb(&self, _async: bool) -> Box<Future<Item=String, Error=RedisError>> {
[INFO] [stderr]     |                                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=String, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:447:82
[INFO] [stderr]     |
[INFO] [stderr] 447 |   fn getrange<K: Into<RedisKey>>(&self, key: K, start: usize, end: usize) -> Box<Future<Item=String, Error=RedisError>> {
[INFO] [stderr]     |                                                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=String, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:455:85
[INFO] [stderr]     |
[INFO] [stderr] 455 |   fn getset<V: Into<RedisValue>, K: Into<RedisKey>>(&self, key: K, value: V) -> Box<Future<Item=Option<RedisValue>, Error=RedisError>> {
[INFO] [stderr]     |                                                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Option<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:463:86
[INFO] [stderr]     |
[INFO] [stderr] 463 |   fn hdel<F: Into<MultipleKeys>, K: Into<RedisKey>>(&self, key: K, fields: F) -> Box<Future<Item=usize, Error=RedisError>> {
[INFO] [stderr]     |                                                                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:470:84
[INFO] [stderr]     |
[INFO] [stderr] 470 |   fn hexists<F: Into<RedisKey>, K: Into<RedisKey>>(&self, key: K, field: F) -> Box<Future<Item=bool, Error=RedisError>> {
[INFO] [stderr]     |                                                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=bool, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:477:81
[INFO] [stderr]     |
[INFO] [stderr] 477 |   fn hget<F: Into<RedisKey>, K: Into<RedisKey>>(&self, key: K, field: F) -> Box<Future<Item=Option<RedisValue>, Error=RedisError>> {
[INFO] [stderr]     |                                                                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Option<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:485:55
[INFO] [stderr]     |
[INFO] [stderr] 485 |   fn hgetall<K: Into<RedisKey>>(&self, key: K) -> Box<Future<Item=HashMap<String, RedisValue>, Error=RedisError>> {
[INFO] [stderr]     |                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=HashMap<String, RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:493:95
[INFO] [stderr]     |
[INFO] [stderr] 493 |   fn hincrby<F: Into<RedisKey>, K: Into<RedisKey>>(&self, key: K, field: F, incr: i64) -> Box<Future<Item=i64, Error=RedisError>> {
[INFO] [stderr]     |                                                                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=i64, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:502:100
[INFO] [stderr]     |
[INFO] [stderr] 502 |   fn hincrbyfloat<K: Into<RedisKey>, F: Into<RedisKey>>(&self, key: K, field: F, incr: f64) -> Box<Future<Item=f64, Error=RedisError>> {
[INFO] [stderr]     |                                                                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=f64, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:511:53
[INFO] [stderr]     |
[INFO] [stderr] 511 |   fn hkeys<K: Into<RedisKey>>(&self, key: K) -> Box<Future<Item=Vec<String>, Error=RedisError>> {
[INFO] [stderr]     |                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<String>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:518:52
[INFO] [stderr]     |
[INFO] [stderr] 518 |   fn hlen<K: Into<RedisKey>>(&self, key: K) -> Box<Future<Item=usize, Error=RedisError>> {
[INFO] [stderr]     |                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:526:87
[INFO] [stderr]     |
[INFO] [stderr] 526 |   fn hmget<F: Into<MultipleKeys>, K: Into<RedisKey>>(&self, key: K, fields: F) -> Box<Future<Item=Vec<RedisValue>, Error=RedisError>> {
[INFO] [stderr]     |                                                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:534:132
[INFO] [stderr]     |
[INFO] [stderr] 534 |   fn hmset<V: Into<RedisValue>, F: Into<RedisKey> + Hash + Eq, K: Into<RedisKey>>(&self, key: K, mut values: HashMap<F, V>) -> Box<Future<Item=String, Error=RedisError>> {
[INFO] [stderr]     |                                                                                                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=String, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:543:112
[INFO] [stderr]     |
[INFO] [stderr] 543 |   fn hset<K: Into<RedisKey>, F: Into<RedisKey>, V: Into<RedisValue>>(&self, key: K, field: F, value: V) -> Box<Future<Item=usize, Error=RedisError>> {
[INFO] [stderr]     |                                                                                                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:552:114
[INFO] [stderr]     |
[INFO] [stderr] 552 |   fn hsetnx<K: Into<RedisKey>, F: Into<RedisKey>, V: Into<RedisValue>>(&self, key: K, field: F, value: V) -> Box<Future<Item=usize, Error=RedisError>> {
[INFO] [stderr]     |                                                                                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:560:84
[INFO] [stderr]     |
[INFO] [stderr] 560 |   fn hstrlen<K: Into<RedisKey>, F: Into<RedisKey>>(&self, key: K, field: F) -> Box<Future<Item=usize, Error=RedisError>> {
[INFO] [stderr]     |                                                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:568:53
[INFO] [stderr]     |
[INFO] [stderr] 568 |   fn hvals<K: Into<RedisKey>>(&self, key: K) -> Box<Future<Item=Vec<RedisValue>, Error=RedisError>> {
[INFO] [stderr]     |                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:577:52
[INFO] [stderr]     |
[INFO] [stderr] 577 |   fn llen<K: Into<RedisKey>>(&self, key: K) -> Box<Future<Item=usize, Error=RedisError>> {
[INFO] [stderr]     |                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:586:84
[INFO] [stderr]     |
[INFO] [stderr] 586 |   fn lpush<K: Into<RedisKey>, V: Into<RedisValue>>(&self, key: K, value: V) -> Box<Future<Item=usize, Error=RedisError>> {
[INFO] [stderr]     |                                                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:593:52
[INFO] [stderr]     |
[INFO] [stderr] 593 |   fn lpop<K: Into<RedisKey>>(&self, key: K) -> Box<Future<Item=Option<RedisValue>, Error=RedisError>> {
[INFO] [stderr]     |                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Option<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:602:88
[INFO] [stderr]     |
[INFO] [stderr] 602 |   fn sadd<K: Into<RedisKey>, V: Into<MultipleValues>>(&self, key: K, values: V) -> Box<Future<Item=usize, Error=RedisError>> {
[INFO] [stderr]     |                                                                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:611:88
[INFO] [stderr]     |
[INFO] [stderr] 611 |   fn srem<K: Into<RedisKey>, V: Into<MultipleValues>>(&self, key: K, values: V) -> Box<Future<Item=usize, Error=RedisError>> {
[INFO] [stderr]     |                                                                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:619:56
[INFO] [stderr]     |
[INFO] [stderr] 619 |   fn smembers<K: Into<RedisKey>>(&self, key: K) -> Box<Future<Item=Vec<RedisValue>, Error=RedisError>> {
[INFO] [stderr]     |                                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:628:67
[INFO] [stderr]     |
[INFO] [stderr] 628 |   fn psubscribe<K: Into<MultipleKeys>>(&self, patterns: K) -> Box<Future<Item=Vec<usize>, Error=RedisError>> {
[INFO] [stderr]     |                                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<usize>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:637:69
[INFO] [stderr]     |
[INFO] [stderr] 637 |   fn punsubscribe<K: Into<MultipleKeys>>(&self, patterns: K) -> Box<Future<Item=Vec<usize>, Error=RedisError>> {
[INFO] [stderr]     |                                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<usize>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:644:57
[INFO] [stderr]     |
[INFO] [stderr] 644 |   fn mget<K: Into<MultipleKeys>>(&self, keys: K) -> Box<Future<Item=Vec<RedisValue>, Error=RedisError>> {
[INFO] [stderr]     |                                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:651:148
[INFO] [stderr]     |
[INFO] [stderr] 651 |   fn zadd<K: Into<RedisKey>, V: Into<MultipleZaddValues>>(&self, key: K, options: Option<SetOptions>, changed: bool, incr: bool, values: V) -> Box<Future<Item=RedisValue, Error=RedisError>> {
[INFO] [stderr]     |                                                                                                                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=RedisValue, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:658:53
[INFO] [stderr]     |
[INFO] [stderr] 658 |   fn zcard<K: Into<RedisKey>>(&self, key: K) -> Box<Future<Item=usize, Error=RedisError>> {
[INFO] [stderr]     |                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:665:74
[INFO] [stderr]     |
[INFO] [stderr] 665 |   fn zcount<K: Into<RedisKey>>(&self, key: K, min: f64, max: f64) -> Box<Future<Item=usize, Error=RedisError>> {
[INFO] [stderr]     |                                                                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:672:107
[INFO] [stderr]     |
[INFO] [stderr] 672 |   fn zlexcount<K: Into<RedisKey>, M: Into<String>, N: Into<String>>(&self, key: K, min: M, max: N) -> Box<Future<Item=usize, Error=RedisError>> {
[INFO] [stderr]     |                                                                                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:679:97
[INFO] [stderr]     |
[INFO] [stderr] 679 |   fn zincrby<K: Into<RedisKey>, V: Into<RedisValue>>(&self, key: K, incr: f64, value: V) -> Box<Future<Item=f64, Error=RedisError>> {
[INFO] [stderr]     |                                                                                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=f64, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:686:96
[INFO] [stderr]     |
[INFO] [stderr] 686 |   fn zrange<K: Into<RedisKey>>(&self, key: K, start: i64, stop: i64, with_scores: bool) -> Box<Future<Item=Vec<RedisValue>, Error=RedisError>> {
[INFO] [stderr]     |                                                                                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:693:140
[INFO] [stderr]     |
[INFO] [stderr] 693 |   fn zrangebylex<K: Into<RedisKey>, M: Into<String>, N: Into<String>>(&self, key: K, min: M, max: N, limit: Option<(usize, usize)>) -> Box<Future<Item=Vec<RedisValue>, Error=RedisError>> {
[INFO] [stderr]     |                                                                                                                                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:700:131
[INFO] [stderr]     |
[INFO] [stderr] 700 |   fn zrangebyscore<K: Into<RedisKey>>(&self, key: K, min: f64, max: f64, with_scores: bool, limit: Option<(usize, usize)>) -> Box<Future<Item=Vec<RedisValue>, Error=RedisError>> {
[INFO] [stderr]     |                                                                                                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:707:77
[INFO] [stderr]     |
[INFO] [stderr] 707 |   fn zpopmax<K: Into<RedisKey>>(&self, key: K, count: Option<usize>) -> Box<Future<Item=Vec<RedisValue>, Error=RedisError>> {
[INFO] [stderr]     |                                                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:714:77
[INFO] [stderr]     |
[INFO] [stderr] 714 |   fn zpopmin<K: Into<RedisKey>>(&self, key: K, count: Option<usize>) -> Box<Future<Item=Vec<RedisValue>, Error=RedisError>> {
[INFO] [stderr]     |                                                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:721:84
[INFO] [stderr]     |
[INFO] [stderr] 721 |   fn zrank<K: Into<RedisKey>, V: Into<RedisValue>>(&self, key: K, value: V) -> Box<Future<Item=RedisValue, Error=RedisError>> {
[INFO] [stderr]     |                                                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=RedisValue, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:728:88
[INFO] [stderr]     |
[INFO] [stderr] 728 |   fn zrem<K: Into<RedisKey>, V: Into<MultipleValues>>(&self, key: K, values: V) -> Box<Future<Item=usize, Error=RedisError>> {
[INFO] [stderr]     |                                                                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:735:112
[INFO] [stderr]     |
[INFO] [stderr] 735 |   fn zremrangebylex<K: Into<RedisKey>, M: Into<String>, N: Into<String>>(&self, key: K, min: M, max: N) -> Box<Future<Item=usize, Error=RedisError>> {
[INFO] [stderr]     |                                                                                                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:742:86
[INFO] [stderr]     |
[INFO] [stderr] 742 |   fn zremrangebyrank<K: Into<RedisKey>>(&self, key: K, start: i64, stop: i64) -> Box<Future<Item=usize, Error=RedisError>> {
[INFO] [stderr]     |                                                                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:749:84
[INFO] [stderr]     |
[INFO] [stderr] 749 |   fn zremrangebyscore<K: Into<RedisKey>>(&self, key: K, min: f64, max: f64) -> Box<Future<Item=usize, Error=RedisError>> {
[INFO] [stderr]     |                                                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:756:99
[INFO] [stderr]     |
[INFO] [stderr] 756 |   fn zrevrange<K: Into<RedisKey>>(&self, key: K, start: i64, stop: i64, with_scores: bool) -> Box<Future<Item=Vec<RedisValue>, Error=RedisError>> {
[INFO] [stderr]     |                                                                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:763:143
[INFO] [stderr]     |
[INFO] [stderr] 763 |   fn zrevrangebylex<K: Into<RedisKey>, M: Into<String>, N: Into<String>>(&self, key: K, max: M, min: N, limit: Option<(usize, usize)>) -> Box<Future<Item=Vec<RedisValue>, Error=RedisError>> {
[INFO] [stderr]     |                                                                                                                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:770:134
[INFO] [stderr]     |
[INFO] [stderr] 770 |   fn zrevrangebyscore<K: Into<RedisKey>>(&self, key: K, max: f64, min: f64, with_scores: bool, limit: Option<(usize, usize)>) -> Box<Future<Item=Vec<RedisValue>, Error=RedisError>> {
[INFO] [stderr]     |                                                                                                                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:777:87
[INFO] [stderr]     |
[INFO] [stderr] 777 |   fn zrevrank<K: Into<RedisKey>, V: Into<RedisValue>>(&self, key: K, value: V) -> Box<Future<Item=RedisValue, Error=RedisError>> {
[INFO] [stderr]     |                                                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=RedisValue, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:784:85
[INFO] [stderr]     |
[INFO] [stderr] 784 |   fn zscore<K: Into<RedisKey>, V: Into<RedisValue>>(&self, key: K, value: V) -> Box<Future<Item=RedisValue, Error=RedisError>> {
[INFO] [stderr]     |                                                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=RedisValue, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:796:12
[INFO] [stderr]     |
[INFO] [stderr] 796 |     -> Box<Future<Item=usize, Error=RedisError>>
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:809:12
[INFO] [stderr]     |
[INFO] [stderr] 809 |     -> Box<Future<Item=usize, Error=RedisError>>
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:817:51
[INFO] [stderr]     |
[INFO] [stderr] 817 |   fn ttl<K: Into<RedisKey>>(&self, key: K) -> Box<Future<Item=i64, Error=RedisError>> {
[INFO] [stderr]     |                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=i64, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:824:52
[INFO] [stderr]     |
[INFO] [stderr] 824 |   fn pttl<K: Into<RedisKey>>(&self, key: K) -> Box<Future<Item=i64, Error=RedisError>> {
[INFO] [stderr]     |                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=i64, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/owned.rs:29:50
[INFO] [stderr]    |
[INFO] [stderr] 29 |         F: FnOnce(&Arc<RedisClientInner>) -> Box<Future<Item=T, Error=RedisError>>
[INFO] [stderr]    |                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=T, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/owned.rs:27:65
[INFO] [stderr]    |
[INFO] [stderr] 27 | fn run_borrowed_empty<T, F>(_self: RedisClient, func: F) -> Box<Future<Item=RedisClient, Error=RedisError>>
[INFO] [stderr]    |                                                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=RedisClient, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/owned.rs:36:50
[INFO] [stderr]    |
[INFO] [stderr] 36 |         F: FnOnce(&Arc<RedisClientInner>) -> Box<Future<Item=T, Error=RedisError>>
[INFO] [stderr]    |                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=T, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/owned.rs:34:59
[INFO] [stderr]    |
[INFO] [stderr] 34 | fn run_borrowed<T, F>(_self: RedisClient, func: F) -> Box<Future<Item=(RedisClient, T), Error=RedisError>>
[INFO] [stderr]    |                                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(RedisClient, T), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/owned.rs:43:24
[INFO] [stderr]    |
[INFO] [stderr] 43 |   fn quit(self) -> Box<Future<Item=Self, Error=RedisError>>;
[INFO] [stderr]    |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Self, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/owned.rs:45:42
[INFO] [stderr]    |
[INFO] [stderr] 45 |   fn flushall(self, _async: bool) -> Box<Future<Item=(Self, String), Error=RedisError>>;
[INFO] [stderr]    |                                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, String), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/owned.rs:47:50
[INFO] [stderr]    |
[INFO] [stderr] 47 |   fn get<K: Into<RedisKey>>(self, key: K) -> Box<Future<Item=(Self, Option<RedisValue>), Error=RedisError>>;
[INFO] [stderr]    |                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, Option<RedisValue>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/owned.rs:49:138
[INFO] [stderr]    |
[INFO] [stderr] 49 |   fn set<K: Into<RedisKey>, V: Into<RedisValue>>(self, key: K, value: V, expire: Option<Expiration>, options: Option<SetOptions>) -> Box<Future<Item=(Self, bool), Error=RedisError>>;
[INFO] [stderr]    |                                                                                                                                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, bool), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/owned.rs:51:34
[INFO] [stderr]    |
[INFO] [stderr] 51 |   fn select(self, db: u8) -> Box<Future<Item=Self, Error=RedisError>>;
[INFO] [stderr]    |                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Self, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/owned.rs:53:51
[INFO] [stderr]    |
[INFO] [stderr] 53 |   fn info(self, section: Option<InfoKind>) -> Box<Future<Item=(Self, String), Error=RedisError>>;
[INFO] [stderr]    |                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, String), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/owned.rs:55:55
[INFO] [stderr]    |
[INFO] [stderr] 55 |   fn del<K: Into<MultipleKeys>>(self, keys: K) -> Box<Future<Item=(Self, usize), Error=RedisError>>;
[INFO] [stderr]    |                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, usize), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/owned.rs:57:58
[INFO] [stderr]    |
[INFO] [stderr] 57 |   fn subscribe<T: Into<String>>(self, channel: T) -> Box<Future<Item=(Self, usize), Error=RedisError>>;
[INFO] [stderr]    |                                                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, usize), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/owned.rs:59:60
[INFO] [stderr]    |
[INFO] [stderr] 59 |   fn unsubscribe<T: Into<String>>(self, channel: T) -> Box<Future<Item=(Self, usize), Error=RedisError>>;
[INFO] [stderr]    |                                                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, usize), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/owned.rs:61:89
[INFO] [stderr]    |
[INFO] [stderr] 61 |   fn publish<T: Into<String>, V: Into<RedisValue>>(self, channel: T, message: V) -> Box<Future<Item=(Self, i64), Error=RedisError>>;
[INFO] [stderr]    |                                                                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, i64), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/owned.rs:63:51
[INFO] [stderr]    |
[INFO] [stderr] 63 |   fn decr<K: Into<RedisKey>>(self, key: K) -> Box<Future<Item=(Self, i64), Error=RedisError>>;
[INFO] [stderr]    |                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, i64), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/owned.rs:65:84
[INFO] [stderr]    |
[INFO] [stderr] 65 |   fn decrby<K: Into<RedisKey>, V: Into<RedisValue>>(self, key: K, value: V) -> Box<Future<Item=(Self, i64), Error=RedisError>>;
[INFO] [stderr]    |                                                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, i64), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/owned.rs:67:52
[INFO] [stderr]    |
[INFO] [stderr] 67 |   fn incr<K: Into<RedisKey>> (self, key: K) -> Box<Future<Item=(Self, i64), Error=RedisError>>;
[INFO] [stderr]    |                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, i64), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/owned.rs:69:64
[INFO] [stderr]    |
[INFO] [stderr] 69 |   fn incrby<K: Into<RedisKey>>(self, key: K, incr: i64) -> Box<Future<Item=(Self, i64), Error=RedisError>>;
[INFO] [stderr]    |                                                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, i64), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/owned.rs:71:69
[INFO] [stderr]    |
[INFO] [stderr] 71 |   fn incrbyfloat<K: Into<RedisKey>>(self, key: K, incr: f64) -> Box<Future<Item=(Self, f64), Error=RedisError>>;
[INFO] [stderr]    |                                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, f64), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/owned.rs:73:24
[INFO] [stderr]    |
[INFO] [stderr] 73 |   fn ping(self) -> Box<Future<Item=(Self, String), Error=RedisError>>;
[INFO] [stderr]    |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, String), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/owned.rs:75:51
[INFO] [stderr]    |
[INFO] [stderr] 75 |   fn auth<V: Into<String>>(self, value: V) -> Box<Future<Item=(Self, String), Error=RedisError>>;
[INFO] [stderr]    |                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, String), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/owned.rs:77:32
[INFO] [stderr]    |
[INFO] [stderr] 77 |   fn bgrewriteaof(self) -> Box<Future<Item=(Self, String), Error=RedisError>>;
[INFO] [stderr]    |                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, String), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/owned.rs:79:26
[INFO] [stderr]    |
[INFO] [stderr] 79 |   fn bgsave(self) -> Box<Future<Item=(Self, String), Error=RedisError>>;
[INFO] [stderr]    |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, String), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/owned.rs:81:31
[INFO] [stderr]    |
[INFO] [stderr] 81 |   fn client_list(self) -> Box<Future<Item=(Self, String), Error=RedisError>>;
[INFO] [stderr]    |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, String), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/owned.rs:83:34
[INFO] [stderr]    |
[INFO] [stderr] 83 |   fn client_getname(self) -> Box<Future<Item=(Self, Option<String>), Error=RedisError>>;
[INFO] [stderr]    |                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, Option<String>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/owned.rs:85:60
[INFO] [stderr]    |
[INFO] [stderr] 85 |   fn client_setname<V: Into<String>>(self, name: V) -> Box<Future<Item=(Self, Option<String>), Error=RedisError>>;
[INFO] [stderr]    |                                                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, Option<String>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/owned.rs:87:26
[INFO] [stderr]    |
[INFO] [stderr] 87 |   fn dbsize(self) -> Box<Future<Item=(Self, usize), Error=RedisError>>;
[INFO] [stderr]    |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, usize), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/owned.rs:89:51
[INFO] [stderr]    |
[INFO] [stderr] 89 |   fn dump<K: Into<RedisKey>>(self, key: K) -> Box<Future<Item=(Self, Option<String>), Error=RedisError>>;
[INFO] [stderr]    |                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, Option<String>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/owned.rs:91:58
[INFO] [stderr]    |
[INFO] [stderr] 91 |   fn exists<K: Into<MultipleKeys>>(self, keys: K) -> Box<Future<Item=(Self, usize), Error=RedisError>>;
[INFO] [stderr]    |                                                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, usize), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/owned.rs:93:67
[INFO] [stderr]    |
[INFO] [stderr] 93 |   fn expire<K: Into<RedisKey>>(self, key: K, seconds: i64) -> Box<Future<Item=(Self, bool), Error=RedisError>>;
[INFO] [stderr]    |                                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, bool), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/owned.rs:95:72
[INFO] [stderr]    |
[INFO] [stderr] 95 |   fn expire_at<K: Into<RedisKey>>(self, key: K, timestamp: i64) -> Box<Future<Item=(Self, bool), Error=RedisError>>;
[INFO] [stderr]    |                                                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, bool), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/owned.rs:97:54
[INFO] [stderr]    |
[INFO] [stderr] 97 |   fn persist<K: Into<RedisKey>>(self, key: K) -> Box<Future<Item=(Self, bool), Error=RedisError>>;
[INFO] [stderr]    |                                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, bool), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/owned.rs:99:41
[INFO] [stderr]    |
[INFO] [stderr] 99 |   fn flushdb(self, _async: bool) -> Box<Future<Item=(Self, String), Error=RedisError>>;
[INFO] [stderr]    |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, String), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:101:81
[INFO] [stderr]     |
[INFO] [stderr] 101 |   fn getrange<K: Into<RedisKey>>(self, key: K, start: usize, end: usize) -> Box<Future<Item=(Self, String), Error=RedisError>>;
[INFO] [stderr]     |                                                                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, String), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:103:84
[INFO] [stderr]     |
[INFO] [stderr] 103 |   fn getset<V: Into<RedisValue>, K: Into<RedisKey>>(self, key: K, value: V) -> Box<Future<Item=(Self, Option<RedisValue>), Error=RedisError>>;
[INFO] [stderr]     |                                                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, Option<RedisValue>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:105:85
[INFO] [stderr]     |
[INFO] [stderr] 105 |   fn hdel<F: Into<MultipleKeys>, K: Into<RedisKey>>(self, key: K, fields: F) -> Box<Future<Item=(Self, usize), Error=RedisError>>;
[INFO] [stderr]     |                                                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, usize), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:107:83
[INFO] [stderr]     |
[INFO] [stderr] 107 |   fn hexists<F: Into<RedisKey>, K: Into<RedisKey>>(self, key: K, field: F) -> Box<Future<Item=(Self, bool), Error=RedisError>>;
[INFO] [stderr]     |                                                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, bool), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:109:80
[INFO] [stderr]     |
[INFO] [stderr] 109 |   fn hget<F: Into<RedisKey>, K: Into<RedisKey>>(self, key: K, field: F) -> Box<Future<Item=(Self, Option<RedisValue>), Error=RedisError>>;
[INFO] [stderr]     |                                                                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, Option<RedisValue>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:111:54
[INFO] [stderr]     |
[INFO] [stderr] 111 |   fn hgetall<K: Into<RedisKey>>(self, key: K) -> Box<Future<Item=(Self, HashMap<String, RedisValue>), Error=RedisError>>;
[INFO] [stderr]     |                                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, HashMap<String, RedisValue>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:113:94
[INFO] [stderr]     |
[INFO] [stderr] 113 |   fn hincrby<F: Into<RedisKey>, K: Into<RedisKey>>(self, key: K, field: F, incr: i64) -> Box<Future<Item=(Self, i64), Error=RedisError>>;
[INFO] [stderr]     |                                                                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, i64), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:115:99
[INFO] [stderr]     |
[INFO] [stderr] 115 |   fn hincrbyfloat<K: Into<RedisKey>, F: Into<RedisKey>>(self, key: K, field: F, incr: f64) -> Box<Future<Item=(Self, f64), Error=RedisError>>;
[INFO] [stderr]     |                                                                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, f64), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:117:52
[INFO] [stderr]     |
[INFO] [stderr] 117 |   fn hkeys<K: Into<RedisKey>>(self, key: K) -> Box<Future<Item=(Self, Vec<String>), Error=RedisError>>;
[INFO] [stderr]     |                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, Vec<String>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:119:51
[INFO] [stderr]     |
[INFO] [stderr] 119 |   fn hlen<K: Into<RedisKey>>(self, key: K) -> Box<Future<Item=(Self, usize), Error=RedisError>>;
[INFO] [stderr]     |                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, usize), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:121:86
[INFO] [stderr]     |
[INFO] [stderr] 121 |   fn hmget<F: Into<MultipleKeys>, K: Into<RedisKey>>(self, key: K, fields: F) -> Box<Future<Item=(Self, Vec<RedisValue>), Error=RedisError>>;
[INFO] [stderr]     |                                                                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, Vec<RedisValue>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:123:127
[INFO] [stderr]     |
[INFO] [stderr] 123 |   fn hmset<V: Into<RedisValue>, F: Into<RedisKey> + Hash + Eq, K: Into<RedisKey>>(self, key: K, values: HashMap<F, V>) -> Box<Future<Item=(Self, String), Error=RedisError>>;
[INFO] [stderr]     |                                                                                                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, String), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:125:111
[INFO] [stderr]     |
[INFO] [stderr] 125 |   fn hset<K: Into<RedisKey>, F: Into<RedisKey>, V: Into<RedisValue>>(self, key: K, field: F, value: V) -> Box<Future<Item=(Self, usize), Error=RedisError>>;
[INFO] [stderr]     |                                                                                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, usize), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:127:113
[INFO] [stderr]     |
[INFO] [stderr] 127 |   fn hsetnx<K: Into<RedisKey>, F: Into<RedisKey>, V: Into<RedisValue>>(self, key: K, field: F, value: V) -> Box<Future<Item=(Self, usize), Error=RedisError>>;
[INFO] [stderr]     |                                                                                                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, usize), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:129:83
[INFO] [stderr]     |
[INFO] [stderr] 129 |   fn hstrlen<K: Into<RedisKey>, F: Into<RedisKey>>(self, key: K, field: F) -> Box<Future<Item=(Self, usize), Error=RedisError>>;
[INFO] [stderr]     |                                                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, usize), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:131:52
[INFO] [stderr]     |
[INFO] [stderr] 131 |   fn hvals<K: Into<RedisKey>>(self, key: K) -> Box<Future<Item=(Self, Vec<RedisValue>), Error=RedisError>>;
[INFO] [stderr]     |                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, Vec<RedisValue>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:133:51
[INFO] [stderr]     |
[INFO] [stderr] 133 |   fn llen<K: Into<RedisKey>>(self, key: K) -> Box<Future<Item=(Self, usize), Error=RedisError>>;
[INFO] [stderr]     |                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, usize), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:135:83
[INFO] [stderr]     |
[INFO] [stderr] 135 |   fn lpush<K: Into<RedisKey>, V: Into<RedisValue>>(self, key: K, value: V) -> Box<Future<Item=(Self, usize), Error=RedisError>>;
[INFO] [stderr]     |                                                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, usize), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:137:51
[INFO] [stderr]     |
[INFO] [stderr] 137 |   fn lpop<K: Into<RedisKey>>(self, key: K) -> Box<Future<Item=(Self, Option<RedisValue>), Error=RedisError>>;
[INFO] [stderr]     |                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, Option<RedisValue>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:139:87
[INFO] [stderr]     |
[INFO] [stderr] 139 |   fn sadd<K: Into<RedisKey>, V: Into<MultipleValues>>(self, key: K, values: V) -> Box<Future<Item=(Self, usize), Error=RedisError>>;
[INFO] [stderr]     |                                                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, usize), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:141:87
[INFO] [stderr]     |
[INFO] [stderr] 141 |   fn srem<K: Into<RedisKey>, V: Into<MultipleValues>>(self, key: K, values: V) -> Box<Future<Item=(Self, usize), Error=RedisError>>;
[INFO] [stderr]     |                                                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, usize), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:143:55
[INFO] [stderr]     |
[INFO] [stderr] 143 |   fn smembers<K: Into<RedisKey>>(self, key: K) -> Box<Future<Item=(Self, Vec<RedisValue>), Error=RedisError>>;
[INFO] [stderr]     |                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, Vec<RedisValue>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:145:66
[INFO] [stderr]     |
[INFO] [stderr] 145 |   fn psubscribe<K: Into<MultipleKeys>>(self, patterns: K) -> Box<Future<Item=(Self, Vec<usize>), Error=RedisError>>;
[INFO] [stderr]     |                                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, Vec<usize>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:147:68
[INFO] [stderr]     |
[INFO] [stderr] 147 |   fn punsubscribe<K: Into<MultipleKeys>>(self, patterns: K) -> Box<Future<Item=(Self, Vec<usize>), Error=RedisError>>;
[INFO] [stderr]     |                                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, Vec<usize>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:149:56
[INFO] [stderr]     |
[INFO] [stderr] 149 |   fn mget<K: Into<MultipleKeys>>(self, keys: K) -> Box<Future<Item=(Self, Vec<RedisValue>), Error=RedisError>>;
[INFO] [stderr]     |                                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, Vec<RedisValue>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:151:147
[INFO] [stderr]     |
[INFO] [stderr] 151 |   fn zadd<K: Into<RedisKey>, V: Into<MultipleZaddValues>>(self, key: K, options: Option<SetOptions>, changed: bool, incr: bool, values: V) -> Box<Future<Item=(Self, RedisValue), Error=RedisError>>;
[INFO] [stderr]     |                                                                                                                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, RedisValue), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:153:52
[INFO] [stderr]     |
[INFO] [stderr] 153 |   fn zcard<K: Into<RedisKey>>(self, key: K) -> Box<Future<Item=(Self, usize), Error=RedisError>>;
[INFO] [stderr]     |                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, usize), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:155:73
[INFO] [stderr]     |
[INFO] [stderr] 155 |   fn zcount<K: Into<RedisKey>>(self, key: K, min: f64, max: f64) -> Box<Future<Item=(Self, usize), Error=RedisError>>;
[INFO] [stderr]     |                                                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, usize), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:157:106
[INFO] [stderr]     |
[INFO] [stderr] 157 |   fn zlexcount<K: Into<RedisKey>, M: Into<String>, N: Into<String>>(self, key: K, min: M, max: N) -> Box<Future<Item=(Self, usize), Error=RedisError>>;
[INFO] [stderr]     |                                                                                                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, usize), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:159:96
[INFO] [stderr]     |
[INFO] [stderr] 159 |   fn zincrby<K: Into<RedisKey>, V: Into<RedisValue>>(self, key: K, incr: f64, value: V) -> Box<Future<Item=(Self, f64), Error=RedisError>>;
[INFO] [stderr]     |                                                                                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, f64), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:161:95
[INFO] [stderr]     |
[INFO] [stderr] 161 |   fn zrange<K: Into<RedisKey>>(self, key: K, start: i64, stop: i64, with_scores: bool) -> Box<Future<Item=(Self, Vec<RedisValue>), Error=RedisError>>;
[INFO] [stderr]     |                                                                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, Vec<RedisValue>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:163:139
[INFO] [stderr]     |
[INFO] [stderr] 163 |   fn zrangebylex<K: Into<RedisKey>, M: Into<String>, N: Into<String>>(self, key: K, min: M, max: N, limit: Option<(usize, usize)>) -> Box<Future<Item=(Self, Vec<RedisValue>), Error=RedisError>>;
[INFO] [stderr]     |                                                                                                                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, Vec<RedisValue>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:165:130
[INFO] [stderr]     |
[INFO] [stderr] 165 |   fn zrangebyscore<K: Into<RedisKey>>(self, key: K, min: f64, max: f64, with_scores: bool, limit: Option<(usize, usize)>) -> Box<Future<Item=(Self, Vec<RedisValue>), Error=RedisError>>;
[INFO] [stderr]     |                                                                                                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, Vec<RedisValue>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:167:76
[INFO] [stderr]     |
[INFO] [stderr] 167 |   fn zpopmax<K: Into<RedisKey>>(self, key: K, count: Option<usize>) -> Box<Future<Item=(Self, Vec<RedisValue>), Error=RedisError>>;
[INFO] [stderr]     |                                                                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, Vec<RedisValue>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:169:76
[INFO] [stderr]     |
[INFO] [stderr] 169 |   fn zpopmin<K: Into<RedisKey>>(self, key: K, count: Option<usize>) -> Box<Future<Item=(Self, Vec<RedisValue>), Error=RedisError>>;
[INFO] [stderr]     |                                                                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, Vec<RedisValue>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:171:83
[INFO] [stderr]     |
[INFO] [stderr] 171 |   fn zrank<K: Into<RedisKey>, V: Into<RedisValue>>(self, key: K, value: V) -> Box<Future<Item=(Self, RedisValue), Error=RedisError>>;
[INFO] [stderr]     |                                                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, RedisValue), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:173:87
[INFO] [stderr]     |
[INFO] [stderr] 173 |   fn zrem<K: Into<RedisKey>, V: Into<MultipleValues>>(self, key: K, values: V) -> Box<Future<Item=(Self, usize), Error=RedisError>>;
[INFO] [stderr]     |                                                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, usize), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:175:111
[INFO] [stderr]     |
[INFO] [stderr] 175 |   fn zremrangebylex<K: Into<RedisKey>, M: Into<String>, N: Into<String>>(self, key: K, min: M, max: N) -> Box<Future<Item=(Self, usize), Error=RedisError>>;
[INFO] [stderr]     |                                                                                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, usize), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:177:85
[INFO] [stderr]     |
[INFO] [stderr] 177 |   fn zremrangebyrank<K: Into<RedisKey>>(self, key: K, start: i64, stop: i64) -> Box<Future<Item=(Self, usize), Error=RedisError>>;
[INFO] [stderr]     |                                                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, usize), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:179:83
[INFO] [stderr]     |
[INFO] [stderr] 179 |   fn zremrangebyscore<K: Into<RedisKey>>(self, key: K, min: f64, max: f64) -> Box<Future<Item=(Self, usize), Error=RedisError>>;
[INFO] [stderr]     |                                                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, usize), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:181:98
[INFO] [stderr]     |
[INFO] [stderr] 181 |   fn zrevrange<K: Into<RedisKey>>(self, key: K, start: i64, stop: i64, with_scores: bool) -> Box<Future<Item=(Self, Vec<RedisValue>), Error=RedisError>>;
[INFO] [stderr]     |                                                                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, Vec<RedisValue>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:183:142
[INFO] [stderr]     |
[INFO] [stderr] 183 |   fn zrevrangebylex<K: Into<RedisKey>, M: Into<String>, N: Into<String>>(self, key: K, max: M, min: N, limit: Option<(usize, usize)>) -> Box<Future<Item=(Self, Vec<RedisValue>), Error=RedisError>>;
[INFO] [stderr]     |                                                                                                                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, Vec<RedisValue>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:185:133
[INFO] [stderr]     |
[INFO] [stderr] 185 |   fn zrevrangebyscore<K: Into<RedisKey>>(self, key: K, max: f64, min: f64, with_scores: bool, limit: Option<(usize, usize)>) -> Box<Future<Item=(Self, Vec<RedisValue>), Error=RedisError>>;
[INFO] [stderr]     |                                                                                                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, Vec<RedisValue>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:187:86
[INFO] [stderr]     |
[INFO] [stderr] 187 |   fn zrevrank<K: Into<RedisKey>, V: Into<RedisValue>>(self, key: K, value: V) -> Box<Future<Item=(Self, RedisValue), Error=RedisError>>;
[INFO] [stderr]     |                                                                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, RedisValue), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:189:84
[INFO] [stderr]     |
[INFO] [stderr] 189 |   fn zscore<K: Into<RedisKey>, V: Into<RedisValue>>(self, key: K, value: V) -> Box<Future<Item=(Self, RedisValue), Error=RedisError>>;
[INFO] [stderr]     |                                                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, RedisValue), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:196:12
[INFO] [stderr]     |
[INFO] [stderr] 196 |     -> Box<Future<Item=(Self, usize), Error=RedisError>>;
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, usize), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:203:12
[INFO] [stderr]     |
[INFO] [stderr] 203 |     -> Box<Future<Item=(Self, usize), Error=RedisError>>;
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, usize), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:205:50
[INFO] [stderr]     |
[INFO] [stderr] 205 |   fn ttl<K: Into<RedisKey>>(self, key: K) -> Box<Future<Item=(Self, i64), Error=RedisError>>;
[INFO] [stderr]     |                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, i64), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:207:51
[INFO] [stderr]     |
[INFO] [stderr] 207 |   fn pttl<K: Into<RedisKey>>(self, key: K) -> Box<Future<Item=(Self, i64), Error=RedisError>>;
[INFO] [stderr]     |                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, i64), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:216:50
[INFO] [stderr]     |
[INFO] [stderr] 216 |   fn get<K: Into<RedisKey>>(self, key: K) -> Box<Future<Item=(Self, Option<RedisValue>), Error=RedisError>> {
[INFO] [stderr]     |                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, Option<RedisValue>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:230:24
[INFO] [stderr]     |
[INFO] [stderr] 230 |   fn quit(self) -> Box<Future<Item=Self, Error=RedisError>> {
[INFO] [stderr]     |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Self, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:238:42
[INFO] [stderr]     |
[INFO] [stderr] 238 |   fn flushall(self, _async: bool) -> Box<Future<Item=(Self, String), Error=RedisError>> {
[INFO] [stderr]     |                                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, String), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:246:138
[INFO] [stderr]     |
[INFO] [stderr] 246 |   fn set<K: Into<RedisKey>, V: Into<RedisValue>>(self, key: K, value: V, expire: Option<Expiration>, options: Option<SetOptions>) -> Box<Future<Item=(Self, bool), Error=RedisError>> {
[INFO] [stderr]     |                                                                                                                                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, bool), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:253:34
[INFO] [stderr]     |
[INFO] [stderr] 253 |   fn select(self, db: u8) -> Box<Future<Item=Self, Error=RedisError>> {
[INFO] [stderr]     |                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Self, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:260:51
[INFO] [stderr]     |
[INFO] [stderr] 260 |   fn info(self, section: Option<InfoKind>) -> Box<Future<Item=(Self, String), Error=RedisError>> {
[INFO] [stderr]     |                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, String), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:268:55
[INFO] [stderr]     |
[INFO] [stderr] 268 |   fn del<K: Into<MultipleKeys>>(self, keys: K) -> Box<Future<Item=(Self, usize), Error=RedisError>> {
[INFO] [stderr]     |                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, usize), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:277:58
[INFO] [stderr]     |
[INFO] [stderr] 277 |   fn subscribe<T: Into<String>>(self, channel: T) -> Box<Future<Item=(Self, usize), Error=RedisError>> {
[INFO] [stderr]     |                                                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, usize), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:284:60
[INFO] [stderr]     |
[INFO] [stderr] 284 |   fn unsubscribe<T: Into<String>>(self, channel: T) -> Box<Future<Item=(Self, usize), Error=RedisError>> {
[INFO] [stderr]     |                                                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, usize), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:291:89
[INFO] [stderr]     |
[INFO] [stderr] 291 |   fn publish<T: Into<String>, V: Into<RedisValue>>(self, channel: T, message: V) -> Box<Future<Item=(Self, i64), Error=RedisError>> {
[INFO] [stderr]     |                                                                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, i64), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:299:51
[INFO] [stderr]     |
[INFO] [stderr] 299 |   fn decr<K: Into<RedisKey>>(self, key: K) -> Box<Future<Item=(Self, i64), Error=RedisError>> {
[INFO] [stderr]     |                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, i64), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:307:84
[INFO] [stderr]     |
[INFO] [stderr] 307 |   fn decrby<K: Into<RedisKey>, V: Into<RedisValue>>(self, key: K, value: V) -> Box<Future<Item=(Self, i64), Error=RedisError>> {
[INFO] [stderr]     |                                                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, i64), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:315:52
[INFO] [stderr]     |
[INFO] [stderr] 315 |   fn incr<K: Into<RedisKey>> (self, key: K) -> Box<Future<Item=(Self, i64), Error=RedisError>> {
[INFO] [stderr]     |                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, i64), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:323:64
[INFO] [stderr]     |
[INFO] [stderr] 323 |   fn incrby<K: Into<RedisKey>>(self, key: K, incr: i64) -> Box<Future<Item=(Self, i64), Error=RedisError>> {
[INFO] [stderr]     |                                                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, i64), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:331:69
[INFO] [stderr]     |
[INFO] [stderr] 331 |   fn incrbyfloat<K: Into<RedisKey>>(self, key: K, incr: f64) -> Box<Future<Item=(Self, f64), Error=RedisError>> {
[INFO] [stderr]     |                                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, f64), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:338:24
[INFO] [stderr]     |
[INFO] [stderr] 338 |   fn ping(self) -> Box<Future<Item=(Self, String), Error=RedisError>> {
[INFO] [stderr]     |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, String), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:345:51
[INFO] [stderr]     |
[INFO] [stderr] 345 |   fn auth<V: Into<String>>(self, value: V) -> Box<Future<Item=(Self, String), Error=RedisError>> {
[INFO] [stderr]     |                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, String), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:352:32
[INFO] [stderr]     |
[INFO] [stderr] 352 |   fn bgrewriteaof(self) -> Box<Future<Item=(Self, String), Error=RedisError>> {
[INFO] [stderr]     |                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, String), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:359:26
[INFO] [stderr]     |
[INFO] [stderr] 359 |   fn bgsave(self) -> Box<Future<Item=(Self, String), Error=RedisError>> {
[INFO] [stderr]     |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, String), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:366:31
[INFO] [stderr]     |
[INFO] [stderr] 366 |   fn client_list(self) -> Box<Future<Item=(Self, String), Error=RedisError>> {
[INFO] [stderr]     |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, String), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:373:34
[INFO] [stderr]     |
[INFO] [stderr] 373 |   fn client_getname(self) -> Box<Future<Item=(Self, Option<String>), Error=RedisError>> {
[INFO] [stderr]     |                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, Option<String>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:380:60
[INFO] [stderr]     |
[INFO] [stderr] 380 |   fn client_setname<V: Into<String>>(self, name: V) -> Box<Future<Item=(Self, Option<String>), Error=RedisError>> {
[INFO] [stderr]     |                                                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, Option<String>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:387:26
[INFO] [stderr]     |
[INFO] [stderr] 387 |   fn dbsize(self) -> Box<Future<Item=(Self, usize), Error=RedisError>> {
[INFO] [stderr]     |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, usize), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:395:51
[INFO] [stderr]     |
[INFO] [stderr] 395 |   fn dump<K: Into<RedisKey>>(self, key: K) -> Box<Future<Item=(Self, Option<String>), Error=RedisError>> {
[INFO] [stderr]     |                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, Option<String>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:402:58
[INFO] [stderr]     |
[INFO] [stderr] 402 |   fn exists<K: Into<MultipleKeys>>(self, keys: K) -> Box<Future<Item=(Self, usize), Error=RedisError>> {
[INFO] [stderr]     |                                                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, usize), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:410:67
[INFO] [stderr]     |
[INFO] [stderr] 410 |   fn expire<K: Into<RedisKey>>(self, key: K, seconds: i64) -> Box<Future<Item=(Self, bool), Error=RedisError>> {
[INFO] [stderr]     |                                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, bool), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:418:72
[INFO] [stderr]     |
[INFO] [stderr] 418 |   fn expire_at<K: Into<RedisKey>>(self, key: K, timestamp: i64) -> Box<Future<Item=(Self, bool), Error=RedisError>> {
[INFO] [stderr]     |                                                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, bool), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:427:54
[INFO] [stderr]     |
[INFO] [stderr] 427 |   fn persist<K: Into<RedisKey>>(self, key: K) -> Box<Future<Item=(Self, bool), Error=RedisError>> {
[INFO] [stderr]     |                                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, bool), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:435:41
[INFO] [stderr]     |
[INFO] [stderr] 435 |   fn flushdb(self, _async: bool) -> Box<Future<Item=(Self, String), Error=RedisError>> {
[INFO] [stderr]     |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, String), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:443:81
[INFO] [stderr]     |
[INFO] [stderr] 443 |   fn getrange<K: Into<RedisKey>>(self, key: K, start: usize, end: usize) -> Box<Future<Item=(Self, String), Error=RedisError>> {
[INFO] [stderr]     |                                                                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, String), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:451:84
[INFO] [stderr]     |
[INFO] [stderr] 451 |   fn getset<V: Into<RedisValue>, K: Into<RedisKey>>(self, key: K, value: V) -> Box<Future<Item=(Self, Option<RedisValue>), Error=RedisError>> {
[INFO] [stderr]     |                                                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, Option<RedisValue>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:459:85
[INFO] [stderr]     |
[INFO] [stderr] 459 |   fn hdel<F: Into<MultipleKeys>, K: Into<RedisKey>>(self, key: K, fields: F) -> Box<Future<Item=(Self, usize), Error=RedisError>> {
[INFO] [stderr]     |                                                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, usize), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:466:83
[INFO] [stderr]     |
[INFO] [stderr] 466 |   fn hexists<F: Into<RedisKey>, K: Into<RedisKey>>(self, key: K, field: F) -> Box<Future<Item=(Self, bool), Error=RedisError>> {
[INFO] [stderr]     |                                                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, bool), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:473:80
[INFO] [stderr]     |
[INFO] [stderr] 473 |   fn hget<F: Into<RedisKey>, K: Into<RedisKey>>(self, key: K, field: F) -> Box<Future<Item=(Self, Option<RedisValue>), Error=RedisError>> {
[INFO] [stderr]     |                                                                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, Option<RedisValue>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:481:54
[INFO] [stderr]     |
[INFO] [stderr] 481 |   fn hgetall<K: Into<RedisKey>>(self, key: K) -> Box<Future<Item=(Self, HashMap<String, RedisValue>), Error=RedisError>> {
[INFO] [stderr]     |                                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, HashMap<String, RedisValue>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:489:94
[INFO] [stderr]     |
[INFO] [stderr] 489 |   fn hincrby<F: Into<RedisKey>, K: Into<RedisKey>>(self, key: K, field: F, incr: i64) -> Box<Future<Item=(Self, i64), Error=RedisError>> {
[INFO] [stderr]     |                                                                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, i64), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:498:99
[INFO] [stderr]     |
[INFO] [stderr] 498 |   fn hincrbyfloat<K: Into<RedisKey>, F: Into<RedisKey>>(self, key: K, field: F, incr: f64) -> Box<Future<Item=(Self, f64), Error=RedisError>> {
[INFO] [stderr]     |                                                                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, f64), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:507:52
[INFO] [stderr]     |
[INFO] [stderr] 507 |   fn hkeys<K: Into<RedisKey>>(self, key: K) -> Box<Future<Item=(Self, Vec<String>), Error=RedisError>> {
[INFO] [stderr]     |                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, Vec<String>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:514:51
[INFO] [stderr]     |
[INFO] [stderr] 514 |   fn hlen<K: Into<RedisKey>>(self, key: K) -> Box<Future<Item=(Self, usize), Error=RedisError>> {
[INFO] [stderr]     |                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, usize), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:522:86
[INFO] [stderr]     |
[INFO] [stderr] 522 |   fn hmget<F: Into<MultipleKeys>, K: Into<RedisKey>>(self, key: K, fields: F) -> Box<Future<Item=(Self, Vec<RedisValue>), Error=RedisError>> {
[INFO] [stderr]     |                                                                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, Vec<RedisValue>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:530:131
[INFO] [stderr]     |
[INFO] [stderr] 530 |   fn hmset<V: Into<RedisValue>, F: Into<RedisKey> + Hash + Eq, K: Into<RedisKey>>(self, key: K, mut values: HashMap<F, V>) -> Box<Future<Item=(Self, String), Error=RedisError>> {
[INFO] [stderr]     |                                                                                                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, String), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:539:111
[INFO] [stderr]     |
[INFO] [stderr] 539 |   fn hset<K: Into<RedisKey>, F: Into<RedisKey>, V: Into<RedisValue>>(self, key: K, field: F, value: V) -> Box<Future<Item=(Self, usize), Error=RedisError>> {
[INFO] [stderr]     |                                                                                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, usize), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:548:113
[INFO] [stderr]     |
[INFO] [stderr] 548 |   fn hsetnx<K: Into<RedisKey>, F: Into<RedisKey>, V: Into<RedisValue>>(self, key: K, field: F, value: V) -> Box<Future<Item=(Self, usize), Error=RedisError>> {
[INFO] [stderr]     |                                                                                                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, usize), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:556:83
[INFO] [stderr]     |
[INFO] [stderr] 556 |   fn hstrlen<K: Into<RedisKey>, F: Into<RedisKey>>(self, key: K, field: F) -> Box<Future<Item=(Self, usize), Error=RedisError>> {
[INFO] [stderr]     |                                                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, usize), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:564:52
[INFO] [stderr]     |
[INFO] [stderr] 564 |   fn hvals<K: Into<RedisKey>>(self, key: K) -> Box<Future<Item=(Self, Vec<RedisValue>), Error=RedisError>> {
[INFO] [stderr]     |                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, Vec<RedisValue>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:573:51
[INFO] [stderr]     |
[INFO] [stderr] 573 |   fn llen<K: Into<RedisKey>>(self, key: K) -> Box<Future<Item=(Self, usize), Error=RedisError>> {
[INFO] [stderr]     |                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, usize), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:582:83
[INFO] [stderr]     |
[INFO] [stderr] 582 |   fn lpush<K: Into<RedisKey>, V: Into<RedisValue>>(self, key: K, value: V) -> Box<Future<Item=(Self, usize), Error=RedisError>> {
[INFO] [stderr]     |                                                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, usize), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:589:51
[INFO] [stderr]     |
[INFO] [stderr] 589 |   fn lpop<K: Into<RedisKey>>(self, key: K) -> Box<Future<Item=(Self, Option<RedisValue>), Error=RedisError>> {
[INFO] [stderr]     |                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, Option<RedisValue>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:598:87
[INFO] [stderr]     |
[INFO] [stderr] 598 |   fn sadd<K: Into<RedisKey>, V: Into<MultipleValues>>(self, key: K, values: V) -> Box<Future<Item=(Self, usize), Error=RedisError>> {
[INFO] [stderr]     |                                                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, usize), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:607:87
[INFO] [stderr]     |
[INFO] [stderr] 607 |   fn srem<K: Into<RedisKey>, V: Into<MultipleValues>>(self, key: K, values: V) -> Box<Future<Item=(Self, usize), Error=RedisError>> {
[INFO] [stderr]     |                                                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, usize), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:615:55
[INFO] [stderr]     |
[INFO] [stderr] 615 |   fn smembers<K: Into<RedisKey>>(self, key: K) -> Box<Future<Item=(Self, Vec<RedisValue>), Error=RedisError>> {
[INFO] [stderr]     |                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, Vec<RedisValue>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:624:66
[INFO] [stderr]     |
[INFO] [stderr] 624 |   fn psubscribe<K: Into<MultipleKeys>>(self, patterns: K) -> Box<Future<Item=(Self, Vec<usize>), Error=RedisError>> {
[INFO] [stderr]     |                                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, Vec<usize>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:633:68
[INFO] [stderr]     |
[INFO] [stderr] 633 |   fn punsubscribe<K: Into<MultipleKeys>>(self, patterns: K) -> Box<Future<Item=(Self, Vec<usize>), Error=RedisError>> {
[INFO] [stderr]     |                                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, Vec<usize>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:640:56
[INFO] [stderr]     |
[INFO] [stderr] 640 |   fn mget<K: Into<MultipleKeys>>(self, keys: K) -> Box<Future<Item=(Self, Vec<RedisValue>), Error=RedisError>> {
[INFO] [stderr]     |                                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, Vec<RedisValue>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:647:147
[INFO] [stderr]     |
[INFO] [stderr] 647 |   fn zadd<K: Into<RedisKey>, V: Into<MultipleZaddValues>>(self, key: K, options: Option<SetOptions>, changed: bool, incr: bool, values: V) -> Box<Future<Item=(Self, RedisValue), Error=RedisError>> {
[INFO] [stderr]     |                                                                                                                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, RedisValue), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:654:52
[INFO] [stderr]     |
[INFO] [stderr] 654 |   fn zcard<K: Into<RedisKey>>(self, key: K) -> Box<Future<Item=(Self, usize), Error=RedisError>> {
[INFO] [stderr]     |                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, usize), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:661:73
[INFO] [stderr]     |
[INFO] [stderr] 661 |   fn zcount<K: Into<RedisKey>>(self, key: K, min: f64, max: f64) -> Box<Future<Item=(Self, usize), Error=RedisError>> {
[INFO] [stderr]     |                                                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, usize), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:668:106
[INFO] [stderr]     |
[INFO] [stderr] 668 |   fn zlexcount<K: Into<RedisKey>, M: Into<String>, N: Into<String>>(self, key: K, min: M, max: N) -> Box<Future<Item=(Self, usize), Error=RedisError>> {
[INFO] [stderr]     |                                                                                                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, usize), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:675:96
[INFO] [stderr]     |
[INFO] [stderr] 675 |   fn zincrby<K: Into<RedisKey>, V: Into<RedisValue>>(self, key: K, incr: f64, value: V) -> Box<Future<Item=(Self, f64), Error=RedisError>> {
[INFO] [stderr]     |                                                                                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, f64), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:682:95
[INFO] [stderr]     |
[INFO] [stderr] 682 |   fn zrange<K: Into<RedisKey>>(self, key: K, start: i64, stop: i64, with_scores: bool) -> Box<Future<Item=(Self, Vec<RedisValue>), Error=RedisError>> {
[INFO] [stderr]     |                                                                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, Vec<RedisValue>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:689:139
[INFO] [stderr]     |
[INFO] [stderr] 689 |   fn zrangebylex<K: Into<RedisKey>, M: Into<String>, N: Into<String>>(self, key: K, min: M, max: N, limit: Option<(usize, usize)>) -> Box<Future<Item=(Self, Vec<RedisValue>), Error=RedisError>> {
[INFO] [stderr]     |                                                                                                                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, Vec<RedisValue>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:696:130
[INFO] [stderr]     |
[INFO] [stderr] 696 |   fn zrangebyscore<K: Into<RedisKey>>(self, key: K, min: f64, max: f64, with_scores: bool, limit: Option<(usize, usize)>) -> Box<Future<Item=(Self, Vec<RedisValue>), Error=RedisError>> {
[INFO] [stderr]     |                                                                                                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, Vec<RedisValue>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:703:76
[INFO] [stderr]     |
[INFO] [stderr] 703 |   fn zpopmax<K: Into<RedisKey>>(self, key: K, count: Option<usize>) -> Box<Future<Item=(Self, Vec<RedisValue>), Error=RedisError>> {
[INFO] [stderr]     |                                                                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, Vec<RedisValue>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:710:76
[INFO] [stderr]     |
[INFO] [stderr] 710 |   fn zpopmin<K: Into<RedisKey>>(self, key: K, count: Option<usize>) -> Box<Future<Item=(Self, Vec<RedisValue>), Error=RedisError>> {
[INFO] [stderr]     |                                                                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, Vec<RedisValue>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:717:83
[INFO] [stderr]     |
[INFO] [stderr] 717 |   fn zrank<K: Into<RedisKey>, V: Into<RedisValue>>(self, key: K, value: V) -> Box<Future<Item=(Self, RedisValue), Error=RedisError>> {
[INFO] [stderr]     |                                                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, RedisValue), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:724:87
[INFO] [stderr]     |
[INFO] [stderr] 724 |   fn zrem<K: Into<RedisKey>, V: Into<MultipleValues>>(self, key: K, values: V) -> Box<Future<Item=(Self, usize), Error=RedisError>> {
[INFO] [stderr]     |                                                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, usize), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:731:111
[INFO] [stderr]     |
[INFO] [stderr] 731 |   fn zremrangebylex<K: Into<RedisKey>, M: Into<String>, N: Into<String>>(self, key: K, min: M, max: N) -> Box<Future<Item=(Self, usize), Error=RedisError>> {
[INFO] [stderr]     |                                                                                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, usize), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:738:85
[INFO] [stderr]     |
[INFO] [stderr] 738 |   fn zremrangebyrank<K: Into<RedisKey>>(self, key: K, start: i64, stop: i64) -> Box<Future<Item=(Self, usize), Error=RedisError>> {
[INFO] [stderr]     |                                                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, usize), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:745:83
[INFO] [stderr]     |
[INFO] [stderr] 745 |   fn zremrangebyscore<K: Into<RedisKey>>(self, key: K, min: f64, max: f64) -> Box<Future<Item=(Self, usize), Error=RedisError>> {
[INFO] [stderr]     |                                                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, usize), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:752:98
[INFO] [stderr]     |
[INFO] [stderr] 752 |   fn zrevrange<K: Into<RedisKey>>(self, key: K, start: i64, stop: i64, with_scores: bool) -> Box<Future<Item=(Self, Vec<RedisValue>), Error=RedisError>> {
[INFO] [stderr]     |                                                                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, Vec<RedisValue>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:759:142
[INFO] [stderr]     |
[INFO] [stderr] 759 |   fn zrevrangebylex<K: Into<RedisKey>, M: Into<String>, N: Into<String>>(self, key: K, max: M, min: N, limit: Option<(usize, usize)>) -> Box<Future<Item=(Self, Vec<RedisValue>), Error=RedisError>> {
[INFO] [stderr]     |                                                                                                                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, Vec<RedisValue>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:766:133
[INFO] [stderr]     |
[INFO] [stderr] 766 |   fn zrevrangebyscore<K: Into<RedisKey>>(self, key: K, max: f64, min: f64, with_scores: bool, limit: Option<(usize, usize)>) -> Box<Future<Item=(Self, Vec<RedisValue>), Error=RedisError>> {
[INFO] [stderr]     |                                                                                                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, Vec<RedisValue>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:773:86
[INFO] [stderr]     |
[INFO] [stderr] 773 |   fn zrevrank<K: Into<RedisKey>, V: Into<RedisValue>>(self, key: K, value: V) -> Box<Future<Item=(Self, RedisValue), Error=RedisError>> {
[INFO] [stderr]     |                                                                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, RedisValue), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:780:84
[INFO] [stderr]     |
[INFO] [stderr] 780 |   fn zscore<K: Into<RedisKey>, V: Into<RedisValue>>(self, key: K, value: V) -> Box<Future<Item=(Self, RedisValue), Error=RedisError>> {
[INFO] [stderr]     |                                                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, RedisValue), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:792:12
[INFO] [stderr]     |
[INFO] [stderr] 792 |     -> Box<Future<Item=(Self, usize), Error=RedisError>>
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, usize), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:805:12
[INFO] [stderr]     |
[INFO] [stderr] 805 |     -> Box<Future<Item=(Self, usize), Error=RedisError>>
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, usize), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:813:50
[INFO] [stderr]     |
[INFO] [stderr] 813 |   fn ttl<K: Into<RedisKey>>(self, key: K) -> Box<Future<Item=(Self, i64), Error=RedisError>> {
[INFO] [stderr]     |                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, i64), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:820:51
[INFO] [stderr]     |
[INFO] [stderr] 820 |   fn pttl<K: Into<RedisKey>>(self, key: K) -> Box<Future<Item=(Self, i64), Error=RedisError>> {
[INFO] [stderr]     |                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, i64), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'tokio_io::codec::Framed': Moved to tokio-codec
[INFO] [stderr]   --> src/multiplexer/types.rs:69:5
[INFO] [stderr]    |
[INFO] [stderr] 69 | use tokio_io::codec::Framed;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(deprecated)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'tokio_io::codec::Framed': Moved to tokio-codec
[INFO] [stderr]   --> src/multiplexer/types.rs:82:39
[INFO] [stderr]    |
[INFO] [stderr] 82 | pub type TlsTransports = Vec<(String, Framed<TcpStream, RedisCodec>)>;
[INFO] [stderr]    |                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'tokio_io::codec::Framed': Moved to tokio-codec
[INFO] [stderr]   --> src/multiplexer/types.rs:84:39
[INFO] [stderr]    |
[INFO] [stderr] 84 | pub type TcpTransports = Vec<(String, Framed<TcpStream, RedisCodec>)>;
[INFO] [stderr]    |                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'tokio_io::codec::Framed': Moved to tokio-codec
[INFO] [stderr]    --> src/multiplexer/types.rs:126:17
[INFO] [stderr]     |
[INFO] [stderr] 126 |   Tls(SplitSink<Framed<TcpStream, RedisCodec>>),
[INFO] [stderr]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'tokio_io::codec::Framed': Moved to tokio-codec
[INFO] [stderr]    --> src/multiplexer/types.rs:127:17
[INFO] [stderr]     |
[INFO] [stderr] 127 |   Tcp(SplitSink<Framed<TcpStream, RedisCodec>>)
[INFO] [stderr]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'tokio_io::codec::Framed': Moved to tokio-codec
[INFO] [stderr]    --> src/multiplexer/types.rs:165:19
[INFO] [stderr]     |
[INFO] [stderr] 165 |   Tls(SplitStream<Framed<TcpStream, RedisCodec>>),
[INFO] [stderr]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'tokio_io::codec::Framed': Moved to tokio-codec
[INFO] [stderr]    --> src/multiplexer/types.rs:166:19
[INFO] [stderr]     |
[INFO] [stderr] 166 |   Tcp(SplitStream<Framed<TcpStream, RedisCodec>>)
[INFO] [stderr]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'tokio_io::codec::Framed': Moved to tokio-codec
[INFO] [stderr]   --> src/multiplexer/connection.rs:77:5
[INFO] [stderr]    |
[INFO] [stderr] 77 | use tokio_io::codec::Framed;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'tokio_io::codec::Framed': Moved to tokio-codec
[INFO] [stderr]    --> src/multiplexer/connection.rs:120:33
[INFO] [stderr]     |
[INFO] [stderr] 120 |   -> Box<Future<Item=(SplitSink<Framed<TcpStream, RedisCodec>>, SplitStream<Framed<TcpStream, RedisCodec>>), Error=RedisError>>
[INFO] [stderr]     |                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'tokio_io::codec::Framed': Moved to tokio-codec
[INFO] [stderr]    --> src/multiplexer/connection.rs:120:77
[INFO] [stderr]     |
[INFO] [stderr] 120 |   -> Box<Future<Item=(SplitSink<Framed<TcpStream, RedisCodec>>, SplitStream<Framed<TcpStream, RedisCodec>>), Error=RedisError>>
[INFO] [stderr]     |                                                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'tokio_io::codec::Framed': Moved to tokio-codec
[INFO] [stderr]    --> src/multiplexer/connection.rs:170:33
[INFO] [stderr]     |
[INFO] [stderr] 170 |   -> Box<Future<Item=(SplitSink<Framed<TcpStream, RedisCodec>>, SplitStream<Framed<TcpStream, RedisCodec>>), Error=RedisError>>
[INFO] [stderr]     |                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'tokio_io::codec::Framed': Moved to tokio-codec
[INFO] [stderr]    --> src/multiplexer/connection.rs:170:77
[INFO] [stderr]     |
[INFO] [stderr] 170 |   -> Box<Future<Item=(SplitSink<Framed<TcpStream, RedisCodec>>, SplitStream<Framed<TcpStream, RedisCodec>>), Error=RedisError>>
[INFO] [stderr]     |                                                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'tokio_io::codec::Framed': Moved to tokio-codec
[INFO] [stderr]    --> src/multiplexer/connection.rs:193:39
[INFO] [stderr]     |
[INFO] [stderr] 193 | pub fn request_response<T>(transport: Framed<T, RedisCodec>, request: &RedisCommand) -> Box<Future<Item=(Frame, Framed<T, RedisCodec>), Error=RedisError>>
[INFO] [stderr]     |                                       ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'tokio_io::codec::Framed': Moved to tokio-codec
[INFO] [stderr]    --> src/multiplexer/connection.rs:193:113
[INFO] [stderr]     |
[INFO] [stderr] 193 | pub fn request_response<T>(transport: Framed<T, RedisCodec>, request: &RedisCommand) -> Box<Future<Item=(Frame, Framed<T, RedisCodec>), Error=RedisError>>
[INFO] [stderr]     |                                                                                                                 ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'tokio_io::codec::Framed': Moved to tokio-codec
[INFO] [stderr]    --> src/multiplexer/connection.rs:212:35
[INFO] [stderr]     |
[INFO] [stderr] 212 | pub fn authenticate<T>(transport: Framed<T, RedisCodec>, name: String, key: Option<String>) -> Box<Future<Item=Framed<T, RedisCodec>, Error=RedisError>>
[INFO] [stderr]     |                                   ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'tokio_io::codec::Framed': Moved to tokio-codec
[INFO] [stderr]    --> src/multiplexer/connection.rs:212:112
[INFO] [stderr]     |
[INFO] [stderr] 212 | pub fn authenticate<T>(transport: Framed<T, RedisCodec>, name: String, key: Option<String>) -> Box<Future<Item=Framed<T, RedisCodec>, Error=RedisError>>
[INFO] [stderr]     |                                                                                                                ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'tokio_io::codec::Framed': Moved to tokio-codec
[INFO] [stderr]    --> src/multiplexer/connection.rs:267:110
[INFO] [stderr]     |
[INFO] [stderr] 267 | pub fn create_initial_transport_tls(handle: Handle, inner: &Arc<RedisClientInner>) -> Box<Future<Item=Option<Framed<TcpStream, RedisCodec>>, Error=RedisError>> {
[INFO] [stderr]     |                                                                                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'tokio_io::codec::Framed': Moved to tokio-codec
[INFO] [stderr]    --> src/multiplexer/connection.rs:382:35
[INFO] [stderr]     |
[INFO] [stderr] 382 |   -> Box<Future<Item=Vec<(String, Framed<TcpStream, RedisCodec>)>, Error=RedisError>>
[INFO] [stderr]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'tokio_io::codec::Framed': Moved to tokio-codec
[INFO] [stderr]   --> src/multiplexer/init.rs:68:5
[INFO] [stderr]    |
[INFO] [stderr] 68 | use tokio_io::codec::Framed;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'tokio_io::codec::Framed': Moved to tokio-codec
[INFO] [stderr]   --> src/multiplexer/init.rs:91:18
[INFO] [stderr]    |
[INFO] [stderr] 91 | type TlsFramed = Framed<TcpStream, RedisCodec>;
[INFO] [stderr]    |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'tokio_io::codec::Framed': Moved to tokio-codec
[INFO] [stderr]   --> src/multiplexer/init.rs:93:18
[INFO] [stderr]    |
[INFO] [stderr] 93 | type TcpFramed = Framed<TcpStream, RedisCodec>;
[INFO] [stderr]    |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'tokio_io::AsyncRead::framed': Use tokio_codec::Decoder::framed instead
[INFO] [stderr]    --> src/multiplexer/connection.rs:180:39
[INFO] [stderr]     |
[INFO] [stderr] 180 |     .and_then(move |socket| Ok(socket.framed(codec)))
[INFO] [stderr]     |                                       ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `init_ft`
[INFO] [stderr]    --> src/utils.rs:314:24
[INFO] [stderr]     |
[INFO] [stderr] 314 |       Ok(Either::A((_, init_ft))) => {
[INFO] [stderr]     |                        ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_init_ft`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `timer_ft`
[INFO] [stderr]    --> src/utils.rs:318:30
[INFO] [stderr]     |
[INFO] [stderr] 318 |       Ok(Either::B((clients, timer_ft))) => {
[INFO] [stderr]     |                              ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_timer_ft`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `init_ft`
[INFO] [stderr]    --> src/utils.rs:322:33
[INFO] [stderr]     |
[INFO] [stderr] 322 |       Err(Either::A((timer_err, init_ft))) => {
[INFO] [stderr]     |                                 ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_init_ft`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `timer_ft`
[INFO] [stderr]    --> src/utils.rs:327:32
[INFO] [stderr]     |
[INFO] [stderr] 327 |       Err(Either::B((init_err, timer_ft))) => {
[INFO] [stderr]     |                                ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_timer_ft`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `e`
[INFO] [stderr]    --> src/multiplexer/mod.rs:270:22
[INFO] [stderr]     |
[INFO] [stderr] 270 |           if let Err(e) = last_command_callback.send(None) {
[INFO] [stderr]     |                      ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `e`
[INFO] [stderr]    --> src/multiplexer/mod.rs:300:22
[INFO] [stderr]     |
[INFO] [stderr] 300 |           if let Err(e) = last_command_callback.send(Some((last_command, e))) {
[INFO] [stderr]     |                      ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `e`
[INFO] [stderr]    --> src/multiplexer/mod.rs:218:20
[INFO] [stderr]     |
[INFO] [stderr] 218 |         if let Err(e) = last_command_callback.send(Some((last_command, e))) {
[INFO] [stderr]     |                    ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `final_self`
[INFO] [stderr]    --> src/multiplexer/mod.rs:225:9
[INFO] [stderr]     |
[INFO] [stderr] 225 |     let final_self = self.clone();
[INFO] [stderr]     |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_final_self`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `init_ft`
[INFO] [stderr]    --> src/multiplexer/init.rs:276:26
[INFO] [stderr]     |
[INFO] [stderr] 276 |         Ok(Either::A((_, init_ft))) => {
[INFO] [stderr]     |                          ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_init_ft`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `multiplexer`
[INFO] [stderr]    --> src/multiplexer/init.rs:284:23
[INFO] [stderr]     |
[INFO] [stderr] 284 |         Ok(Either::B((multiplexer, timer_ft))) => {
[INFO] [stderr]     |                       ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_multiplexer`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `timer_ft`
[INFO] [stderr]    --> src/multiplexer/init.rs:284:36
[INFO] [stderr]     |
[INFO] [stderr] 284 |         Ok(Either::B((multiplexer, timer_ft))) => {
[INFO] [stderr]     |                                    ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_timer_ft`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `init_ft`
[INFO] [stderr]    --> src/multiplexer/init.rs:288:35
[INFO] [stderr]     |
[INFO] [stderr] 288 |         Err(Either::A((timer_err, init_ft))) => {
[INFO] [stderr]     |                                   ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_init_ft`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `timer_ft`
[INFO] [stderr]    --> src/multiplexer/init.rs:293:34
[INFO] [stderr]     |
[INFO] [stderr] 293 |         Err(Either::B((init_err, timer_ft))) => {
[INFO] [stderr]     |                                  ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_timer_ft`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `auth_key`
[INFO] [stderr]    --> src/multiplexer/init.rs:225:9
[INFO] [stderr]     |
[INFO] [stderr] 225 |     let auth_key = utils::read_auth_key(&inner.config);
[INFO] [stderr]     |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_auth_key`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `init_ft`
[INFO] [stderr]    --> src/multiplexer/init.rs:382:26
[INFO] [stderr]     |
[INFO] [stderr] 382 |         Ok(Either::A((_, init_ft))) => {
[INFO] [stderr]     |                          ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_init_ft`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `multiplexer`
[INFO] [stderr]    --> src/multiplexer/init.rs:390:23
[INFO] [stderr]     |
[INFO] [stderr] 390 |         Ok(Either::B((multiplexer, timer_ft))) => {
[INFO] [stderr]     |                       ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_multiplexer`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `timer_ft`
[INFO] [stderr]    --> src/multiplexer/init.rs:390:36
[INFO] [stderr]     |
[INFO] [stderr] 390 |         Ok(Either::B((multiplexer, timer_ft))) => {
[INFO] [stderr]     |                                    ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_timer_ft`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `init_ft`
[INFO] [stderr]    --> src/multiplexer/init.rs:394:35
[INFO] [stderr]     |
[INFO] [stderr] 394 |         Err(Either::A((timer_err, init_ft))) => {
[INFO] [stderr]     |                                   ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_init_ft`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `timer_ft`
[INFO] [stderr]    --> src/multiplexer/init.rs:399:34
[INFO] [stderr]     |
[INFO] [stderr] 399 |         Err(Either::B((init_err, timer_ft))) => {
[INFO] [stderr]     |                                  ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_timer_ft`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `error`
[INFO] [stderr]    --> src/multiplexer/init.rs:582:40
[INFO] [stderr]     |
[INFO] [stderr] 582 |                 Ok(Some((last_command, error))) => {
[INFO] [stderr]     |                                        ^^^^^ help: if this is intentional, prefix it with an underscore: `_error`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `e2`
[INFO] [stderr]   --> src/pool.rs:94:27
[INFO] [stderr]    |
[INFO] [stderr] 94 |           (Some(e1), Some(e2)) => Some(e1),
[INFO] [stderr]    |                           ^^ help: if this is intentional, prefix it with an underscore: `_e2`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `e2`
[INFO] [stderr]    --> src/pool.rs:134:27
[INFO] [stderr]     |
[INFO] [stderr] 134 |           (Some(e1), Some(e2)) => Some(e1),
[INFO] [stderr]     |                           ^^ help: if this is intentional, prefix it with an underscore: `_e2`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/utils.rs:121:7
[INFO] [stderr]     |
[INFO] [stderr] 121 |   let mut state_ref = state_guard.deref_mut();
[INFO] [stderr]     |       ----^^^^^^^^^
[INFO] [stderr]     |       |
[INFO] [stderr]     |       help: remove this `mut`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_mut)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/utils.rs:187:7
[INFO] [stderr]     |
[INFO] [stderr] 187 |   let mut closed_ref = closed_guard.deref_mut();
[INFO] [stderr]     |       ----^^^^^^^^^^
[INFO] [stderr]     |       |
[INFO] [stderr]     |       help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/utils.rs:194:7
[INFO] [stderr]     |
[INFO] [stderr] 194 |   let mut closed_ref = closed_guard.deref_mut();
[INFO] [stderr]     |       ----^^^^^^^^^^
[INFO] [stderr]     |       |
[INFO] [stderr]     |       help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/utils.rs:256:7
[INFO] [stderr]     |
[INFO] [stderr] 256 |   let mut guard_ref = guard.deref_mut();
[INFO] [stderr]     |       ----^^^^^^^^^
[INFO] [stderr]     |       |
[INFO] [stderr]     |       help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/protocol/types.rs:138:9
[INFO] [stderr]     |
[INFO] [stderr] 138 |     for mut chunk in data.chunks_exact_mut(2) {
[INFO] [stderr]     |         ----^^^^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/protocol/types.rs:164:9
[INFO] [stderr]     |
[INFO] [stderr] 164 |     for mut chunk in data.chunks_exact_mut(2) {
[INFO] [stderr]     |         ----^^^^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/protocol/utils.rs:144:15
[INFO] [stderr]     |
[INFO] [stderr] 144 |       for (_, mut slots) in out.iter_mut() {
[INFO] [stderr]     |               ----^^^^^
[INFO] [stderr]     |               |
[INFO] [stderr]     |               help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/protocol/utils.rs:145:13
[INFO] [stderr]     |
[INFO] [stderr] 145 |         for mut slot in slots.iter_mut() {
[INFO] [stderr]     |             ----^^^^
[INFO] [stderr]     |             |
[INFO] [stderr]     |             help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/multiplexer/utils.rs:58:7
[INFO] [stderr]    |
[INFO] [stderr] 58 |   let mut guard_ref = guard.deref_mut();
[INFO] [stderr]    |       ----^^^^^^^^^
[INFO] [stderr]    |       |
[INFO] [stderr]    |       help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/multiplexer/utils.rs:171:7
[INFO] [stderr]     |
[INFO] [stderr] 171 |   let mut connect_tx_ref = connect_tx_guard.deref_mut();
[INFO] [stderr]     |       ----^^^^^^^^^^^^^^
[INFO] [stderr]     |       |
[INFO] [stderr]     |       help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/multiplexer/utils.rs:182:7
[INFO] [stderr]     |
[INFO] [stderr] 182 |   let mut tx_ref = tx_guard.deref_mut();
[INFO] [stderr]     |       ----^^^^^^
[INFO] [stderr]     |       |
[INFO] [stderr]     |       help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/multiplexer/utils.rs:199:7
[INFO] [stderr]     |
[INFO] [stderr] 199 |   let mut tx_ref = tx_guard.deref_mut();
[INFO] [stderr]     |       ----^^^^^^
[INFO] [stderr]     |       |
[INFO] [stderr]     |       help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/multiplexer/utils.rs:297:7
[INFO] [stderr]     |
[INFO] [stderr] 297 |   let mut old_cursor = match last_request.kind {
[INFO] [stderr]     |       ----^^^^^^^^^^
[INFO] [stderr]     |       |
[INFO] [stderr]     |       help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/multiplexer/utils.rs:308:31
[INFO] [stderr]     |
[INFO] [stderr] 308 | pub fn handle_key_scan_result(mut frame: Frame) -> Result<(String, Vec<RedisKey>), RedisError> {
[INFO] [stderr]     |                               ----^^^^^
[INFO] [stderr]     |                               |
[INFO] [stderr]     |                               help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/multiplexer/utils.rs:340:33
[INFO] [stderr]     |
[INFO] [stderr] 340 | pub fn handle_value_scan_result(mut frame: Frame) -> Result<(String, Vec<RedisValue>), RedisError> {
[INFO] [stderr]     |                                 ----^^^^^
[INFO] [stderr]     |                                 |
[INFO] [stderr]     |                                 help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/multiplexer/utils.rs:372:60
[INFO] [stderr]     |
[INFO] [stderr] 372 | pub fn send_key_scan_result(inner: &Arc<RedisClientInner>, mut cmd: RedisCommand, result: Vec<RedisKey>, can_continue: bool) -> Result<(), RedisError> {
[INFO] [stderr]     |                                                            ----^^^
[INFO] [stderr]     |                                                            |
[INFO] [stderr]     |                                                            help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/multiplexer/utils.rs:400:62
[INFO] [stderr]     |
[INFO] [stderr] 400 | pub fn send_value_scan_result(inner: &Arc<RedisClientInner>, mut cmd: RedisCommand, result: Vec<RedisValue>, can_continue: bool) -> Result<(), RedisError> {
[INFO] [stderr]     |                                                              ----^^^
[INFO] [stderr]     |                                                              |
[INFO] [stderr]     |                                                              help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/multiplexer/utils.rs:510:11
[INFO] [stderr]     |
[INFO] [stderr] 510 |       let mut message_tx_ref = message_tx_guard.deref_mut();
[INFO] [stderr]     |           ----^^^^^^^^^^^^^^
[INFO] [stderr]     |           |
[INFO] [stderr]     |           help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/multiplexer/utils.rs:526:13
[INFO] [stderr]     |
[INFO] [stderr] 526 |         let mut response_kind = match last_request.kind.response_kind_mut() {
[INFO] [stderr]     |             ----^^^^^^^^^^^^^
[INFO] [stderr]     |             |
[INFO] [stderr]     |             help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/multiplexer/init.rs:340:22
[INFO] [stderr]     |
[INFO] [stderr] 340 |     .and_then(move |(mut transports, cache)| {
[INFO] [stderr]     |                      ----^^^^^^^^^^
[INFO] [stderr]     |                      |
[INFO] [stderr]     |                      help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/types.rs:725:11
[INFO] [stderr]     |
[INFO] [stderr] 725 |   fn from(mut d: Vec<T>) -> Self {
[INFO] [stderr]     |           ----^
[INFO] [stderr]     |           |
[INFO] [stderr]     |           help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/types.rs:733:11
[INFO] [stderr]     |
[INFO] [stderr] 733 |   fn from(mut d: VecDeque<T>) -> Self {
[INFO] [stderr]     |           ----^
[INFO] [stderr]     |           |
[INFO] [stderr]     |           help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/types.rs:771:11
[INFO] [stderr]     |
[INFO] [stderr] 771 |   fn from(mut d: Vec<T>) -> Self {
[INFO] [stderr]     |           ----^
[INFO] [stderr]     |           |
[INFO] [stderr]     |           help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/types.rs:779:11
[INFO] [stderr]     |
[INFO] [stderr] 779 |   fn from(mut d: VecDeque<T>) -> Self {
[INFO] [stderr]     |           ----^
[INFO] [stderr]     |           |
[INFO] [stderr]     |           help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/client.rs:112:9
[INFO] [stderr]     |
[INFO] [stderr] 112 |     let mut guard_ref = guard.deref_mut();
[INFO] [stderr]     |         ----^^^^^^^^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/commands.rs:48:9
[INFO] [stderr]    |
[INFO] [stderr] 48 |     let mut closed_ref = closed_guard.deref_mut();
[INFO] [stderr]    |         ----^^^^^^^^^^
[INFO] [stderr]    |         |
[INFO] [stderr]    |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/commands.rs:751:9
[INFO] [stderr]     |
[INFO] [stderr] 751 |     for mut chunk in resp.chunks_mut(2) {
[INFO] [stderr]     |         ----^^^^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]     --> src/commands.rs:1624:9
[INFO] [stderr]      |
[INFO] [stderr] 1624 |     let mut args = vec![
[INFO] [stderr]      |         ----^^^^
[INFO] [stderr]      |         |
[INFO] [stderr]      |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/borrowed.rs:534:98
[INFO] [stderr]     |
[INFO] [stderr] 534 |   fn hmset<V: Into<RedisValue>, F: Into<RedisKey> + Hash + Eq, K: Into<RedisKey>>(&self, key: K, mut values: HashMap<F, V>) -> Box<Future<Item=String, Error=RedisError>> {
[INFO] [stderr]     |                                                                                                  ----^^^^^^
[INFO] [stderr]     |                                                                                                  |
[INFO] [stderr]     |                                                                                                  help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/owned.rs:530:97
[INFO] [stderr]     |
[INFO] [stderr] 530 |   fn hmset<V: Into<RedisValue>, F: Into<RedisKey> + Hash + Eq, K: Into<RedisKey>>(self, key: K, mut values: HashMap<F, V>) -> Box<Future<Item=(Self, String), Error=RedisError>> {
[INFO] [stderr]     |                                                                                                 ----^^^^^^
[INFO] [stderr]     |                                                                                                 |
[INFO] [stderr]     |                                                                                                 help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `future_ok_generic`
[INFO] [stderr]    --> src/utils.rs:141:8
[INFO] [stderr]     |
[INFO] [stderr] 141 | pub fn future_ok_generic<T: 'static, E: 'static>(d: T) -> Box<Future<Item=T, Error=E>> {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(dead_code)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `stream_error`
[INFO] [stderr]    --> src/utils.rs:145:8
[INFO] [stderr]     |
[INFO] [stderr] 145 | pub fn stream_error<T: 'static>(e: RedisError) -> Box<Stream<Item=T, Error=RedisError>> {
[INFO] [stderr]     |        ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `reset_reconnect_attempts`
[INFO] [stderr]    --> src/utils.rs:149:8
[INFO] [stderr]     |
[INFO] [stderr] 149 | pub fn reset_reconnect_attempts(reconnect: &RwLock<Option<ReconnectPolicy>>) {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `u64_to_i64_max`
[INFO] [stderr]    --> src/utils.rs:155:8
[INFO] [stderr]     |
[INFO] [stderr] 155 | pub fn u64_to_i64_max(u: u64) -> i64 {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `compare_f64`
[INFO] [stderr]    --> src/utils.rs:173:8
[INFO] [stderr]     |
[INFO] [stderr] 173 | pub fn compare_f64(lhs: &f64, rhs: &f64) -> bool {
[INFO] [stderr]     |        ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `to_url_string`
[INFO] [stderr]    --> src/utils.rs:177:8
[INFO] [stderr]     |
[INFO] [stderr] 177 | pub fn to_url_string(host: &str, port: u16) -> String {
[INFO] [stderr]     |        ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `set_closed_flag`
[INFO] [stderr]    --> src/utils.rs:185:8
[INFO] [stderr]     |
[INFO] [stderr] 185 | pub fn set_closed_flag(closed: &RwLock<bool>, flag: bool) {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant item is never used: `CR`
[INFO] [stderr]   --> src/protocol/types.rs:31:1
[INFO] [stderr]    |
[INFO] [stderr] 31 | pub const CR: char = '\r';
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant item is never used: `LF`
[INFO] [stderr]   --> src/protocol/types.rs:32:1
[INFO] [stderr]    |
[INFO] [stderr] 32 | pub const LF: char = '\n';
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: type alias is never used: `RefreshCache`
[INFO] [stderr]     --> src/protocol/types.rs:1029:1
[INFO] [stderr]      |
[INFO] [stderr] 1029 | pub type RefreshCache = bool;
[INFO] [stderr]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method is never used: `clear`
[INFO] [stderr]     --> src/protocol/types.rs:1143:3
[INFO] [stderr]      |
[INFO] [stderr] 1143 |   pub fn clear(&mut self) {
[INFO] [stderr]      |   ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method is never used: `next`
[INFO] [stderr]     --> src/protocol/types.rs:1148:3
[INFO] [stderr]      |
[INFO] [stderr] 1148 |   pub fn next(&mut self) -> Option<String> {
[INFO] [stderr]      |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method is never used: `len`
[INFO] [stderr]     --> src/protocol/types.rs:1216:3
[INFO] [stderr]      |
[INFO] [stderr] 1216 |   pub fn len(&self) -> usize {
[INFO] [stderr]      |   ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `reconnect`
[INFO] [stderr]    --> src/protocol/utils.rs:343:8
[INFO] [stderr]     |
[INFO] [stderr] 343 | pub fn reconnect(handle: Handle, inner: Arc<RedisClientInner>, mut result: Result<Option<RedisError>, RedisError>, force_no_delay: bool)
[INFO] [stderr]     |        ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: type alias is never used: `TlsTransports`
[INFO] [stderr]   --> src/multiplexer/types.rs:82:1
[INFO] [stderr]    |
[INFO] [stderr] 82 | pub type TlsTransports = Vec<(String, Framed<TcpStream, RedisCodec>)>;
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: type alias is never used: `TcpTransports`
[INFO] [stderr]   --> src/multiplexer/types.rs:84:1
[INFO] [stderr]    |
[INFO] [stderr] 84 | pub type TcpTransports = Vec<(String, Framed<TcpStream, RedisCodec>)>;
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `should_disable_cert_verification`
[INFO] [stderr]   --> src/multiplexer/connection.rs:92:4
[INFO] [stderr]    |
[INFO] [stderr] 92 | fn should_disable_cert_verification() -> bool {
[INFO] [stderr]    |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `create_initial_transport_tls`
[INFO] [stderr]    --> src/multiplexer/connection.rs:267:8
[INFO] [stderr]     |
[INFO] [stderr] 267 | pub fn create_initial_transport_tls(handle: Handle, inner: &Arc<RedisClientInner>) -> Box<Future<Item=Option<Framed<TcpStream, RedisCodec>>, Error=RedisError>> {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `create_all_transports_tls`
[INFO] [stderr]    --> src/multiplexer/connection.rs:381:8
[INFO] [stderr]     |
[INFO] [stderr] 381 | pub fn create_all_transports_tls(handle: Handle, cache: &ClusterKeyCache, key: Option<String>, inner: &Arc<RedisClientInner>)
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method is never used: `take_last_command_callback`
[INFO] [stderr]    --> src/multiplexer/mod.rs:148:3
[INFO] [stderr]     |
[INFO] [stderr] 148 |   pub fn take_last_command_callback(&self) -> Option<LastCommandCaller> {
[INFO] [stderr]     |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `decr_atomic`
[INFO] [stderr]   --> src/pool.rs:35:4
[INFO] [stderr]    |
[INFO] [stderr] 35 | fn decr_atomic(size: &Arc<AtomicUsize>) -> usize {
[INFO] [stderr]    |    ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `set_atomic`
[INFO] [stderr]   --> src/pool.rs:47:4
[INFO] [stderr]    |
[INFO] [stderr] 47 | fn set_atomic(size: &Arc<AtomicUsize>, val: usize) -> usize {
[INFO] [stderr]    |    ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused attribute
[INFO] [stderr]   --> src/client.rs:46:1
[INFO] [stderr]    |
[INFO] [stderr] 46 | #[macro_use]
[INFO] [stderr]    | ^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_attributes)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused `std::result::Result` that must be used
[INFO] [stderr]    --> src/multiplexer/mod.rs:286:17
[INFO] [stderr]     |
[INFO] [stderr] 286 |                 tx.unbounded_send(RedisCommand::new(RedisCommandKind::_Close, vec![], None));
[INFO] [stderr]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_must_use)]` on by default
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/utils.rs:129:57
[INFO] [stderr]     |
[INFO] [stderr] 129 | pub fn future_error<T: 'static>(err: RedisError) -> Box<Future<Item = T, Error = RedisError>> {
[INFO] [stderr]     |                                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item = T, Error = RedisError>`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/utils.rs:133:43
[INFO] [stderr]     |
[INFO] [stderr] 133 | pub fn future_ok<T: 'static>(d: T) -> Box<Future<Item = T, Error = RedisError>> {
[INFO] [stderr]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item = T, Error = RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/utils.rs:137:68
[INFO] [stderr]     |
[INFO] [stderr] 137 | pub fn future_error_generic<T: 'static, E: 'static>(err: E) -> Box<Future<Item=T, Error=E>> {
[INFO] [stderr]     |                                                                    ^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=T, Error=E>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/utils.rs:141:63
[INFO] [stderr]     |
[INFO] [stderr] 141 | pub fn future_ok_generic<T: 'static, E: 'static>(d: T) -> Box<Future<Item=T, Error=E>> {
[INFO] [stderr]     |                                                               ^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=T, Error=E>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/utils.rs:145:55
[INFO] [stderr]     |
[INFO] [stderr] 145 | pub fn stream_error<T: 'static>(e: RedisError) -> Box<Stream<Item=T, Error=RedisError>> {
[INFO] [stderr]     |                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Stream<Item=T, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/utils.rs:235:75
[INFO] [stderr]     |
[INFO] [stderr] 235 | pub fn request_response<F>(inner: &Arc<RedisClientInner>, func: F) -> Box<Future<Item=ProtocolFrame, Error=RedisError>>
[INFO] [stderr]     |                                                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=ProtocolFrame, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/utils.rs:261:83
[INFO] [stderr]     |
[INFO] [stderr] 261 | pub fn split(inner: &Arc<RedisClientInner>, handle: &Handle, timeout: u64) -> Box<Future<Item=Vec<(RedisClient, RedisConfig)>, Error=RedisError>> {
[INFO] [stderr]     |                                                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<(RedisClient, RedisConfig)>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/protocol/utils.rs:344:10
[INFO] [stderr]     |
[INFO] [stderr] 344 |   -> Box<Future<Item=Loop<(), (Handle, Arc<RedisClientInner>)>, Error=RedisError>>
[INFO] [stderr]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Loop<(), (Handle, Arc<RedisClientInner>)>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/multiplexer/types.rs:116:28
[INFO] [stderr]     |
[INFO] [stderr] 116 | pub type FrameStream = Box<Stream<Item=Frame, Error=RedisError>>;
[INFO] [stderr]     |                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Stream<Item=Frame, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/multiplexer/types.rs:291:43
[INFO] [stderr]     |
[INFO] [stderr] 291 |   pub fn quit(&self, frame: Frame) -> Box<Future<Item=(), Error=RedisError>> {
[INFO] [stderr]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/multiplexer/types.rs:331:91
[INFO] [stderr]     |
[INFO] [stderr] 331 |   pub fn write_command(&self, key: Option<String>, frame: Frame, no_cluster: bool) -> Box<Future<Item=(), Error=RedisError>> {
[INFO] [stderr]     |                                                                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/multiplexer/connection.rs:120:10
[INFO] [stderr]     |
[INFO] [stderr] 120 |   -> Box<Future<Item=(SplitSink<Framed<TcpStream, RedisCodec>>, SplitStream<Framed<TcpStream, RedisCodec>>), Error=RedisError>>
[INFO] [stderr]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(SplitSink<Framed<TcpStream, RedisCodec>>, SplitStream<Framed<TcpStream, RedisCodec>>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/multiplexer/connection.rs:170:10
[INFO] [stderr]     |
[INFO] [stderr] 170 |   -> Box<Future<Item=(SplitSink<Framed<TcpStream, RedisCodec>>, SplitStream<Framed<TcpStream, RedisCodec>>), Error=RedisError>>
[INFO] [stderr]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(SplitSink<Framed<TcpStream, RedisCodec>>, SplitStream<Framed<TcpStream, RedisCodec>>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/multiplexer/connection.rs:193:93
[INFO] [stderr]     |
[INFO] [stderr] 193 | pub fn request_response<T>(transport: Framed<T, RedisCodec>, request: &RedisCommand) -> Box<Future<Item=(Frame, Framed<T, RedisCodec>), Error=RedisError>>
[INFO] [stderr]     |                                                                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Frame, Framed<T, RedisCodec>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/multiplexer/connection.rs:212:100
[INFO] [stderr]     |
[INFO] [stderr] 212 | pub fn authenticate<T>(transport: Framed<T, RedisCodec>, name: String, key: Option<String>) -> Box<Future<Item=Framed<T, RedisCodec>, Error=RedisError>>
[INFO] [stderr]     |                                                                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Framed<T, RedisCodec>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/multiplexer/connection.rs:267:91
[INFO] [stderr]     |
[INFO] [stderr] 267 | pub fn create_initial_transport_tls(handle: Handle, inner: &Arc<RedisClientInner>) -> Box<Future<Item=Option<Framed<TcpStream, RedisCodec>>, Error=RedisError>> {
[INFO] [stderr]     |                                                                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Option<Framed<TcpStream, RedisCodec>>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/multiplexer/connection.rs:332:87
[INFO] [stderr]     |
[INFO] [stderr] 332 | pub fn create_initial_transport(handle: Handle, inner: &Arc<RedisClientInner>) -> Box<Future<Item=Option<Framed<TcpStream, RedisCodec>>, Error=RedisError>> {
[INFO] [stderr]     |                                                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Option<Framed<TcpStream, RedisCodec>>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/multiplexer/connection.rs:382:10
[INFO] [stderr]     |
[INFO] [stderr] 382 |   -> Box<Future<Item=Vec<(String, Framed<TcpStream, RedisCodec>)>, Error=RedisError>>
[INFO] [stderr]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<(String, Framed<TcpStream, RedisCodec>)>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/multiplexer/connection.rs:456:10
[INFO] [stderr]     |
[INFO] [stderr] 456 |   -> Box<Future<Item=Vec<(String, Framed<TcpStream, RedisCodec>)>, Error=RedisError>>
[INFO] [stderr]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<(String, Framed<TcpStream, RedisCodec>)>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/multiplexer/connection.rs:525:81
[INFO] [stderr]     |
[INFO] [stderr] 525 | fn read_cluster_cache_tls(handle: Handle, inner: &Arc<RedisClientInner>) -> Box<Future<Item=Frame, Error=RedisError>> {
[INFO] [stderr]     |                                                                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Frame, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/multiplexer/connection.rs:529:77
[INFO] [stderr]     |
[INFO] [stderr] 529 | fn read_cluster_cache(handle: Handle, inner: &Arc<RedisClientInner>) -> Box<Future<Item=Frame, Error=RedisError>> {
[INFO] [stderr]     |                                                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Frame, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/multiplexer/connection.rs:550:83
[INFO] [stderr]     |
[INFO] [stderr] 550 | pub fn build_cluster_cache(handle: &Handle, inner: &Arc<RedisClientInner>) -> Box<Future<Item=ClusterKeyCache, Error=RedisError>> {
[INFO] [stderr]     |                                                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=ClusterKeyCache, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/multiplexer/init.rs:134:10
[INFO] [stderr]     |
[INFO] [stderr] 134 |   -> Box<Future<Item=(Either<TlsTransports, TcpTransports>, ClusterKeyCache), Error=RedisError>>
[INFO] [stderr]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Either<TlsTransports, TcpTransports>, ClusterKeyCache), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/multiplexer/init.rs:156:10
[INFO] [stderr]     |
[INFO] [stderr] 156 |   -> Box<Future<Item=Either<SplitTlsTransport, SplitTcpTransport>, Error=RedisError>>
[INFO] [stderr]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Either<SplitTlsTransport, SplitTcpTransport>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/multiplexer/init.rs:166:10
[INFO] [stderr]     |
[INFO] [stderr] 166 |   -> Box<Future<Item=Either<SplitTlsTransport, SplitTcpTransport>, Error=RedisError>>
[INFO] [stderr]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Either<SplitTlsTransport, SplitTcpTransport>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/multiplexer/init.rs:178:125
[INFO] [stderr]     |
[INFO] [stderr] 178 | fn backoff_and_retry(inner: Arc<RedisClientInner>, handle: Handle, multiplexer: Multiplexer, force_no_backoff: bool) -> Box<Future<Item=Loop<InitState, InitState>, Error=RedisError>> {
[INFO] [stderr]     |                                                                                                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Loop<InitState, InitState>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/multiplexer/init.rs:204:137
[INFO] [stderr]     |
[INFO] [stderr] 204 | fn build_centralized_multiplexer(handle: Handle, inner: Arc<RedisClientInner>, multiplexer: Multiplexer, force_no_backoff: bool) -> Box<Future<Item=InitState, Error=RedisError>> {
[INFO] [stderr]     |                                                                                                                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=InitState, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/multiplexer/init.rs:307:135
[INFO] [stderr]     |
[INFO] [stderr] 307 | fn build_clustered_multiplexer(handle: Handle, inner: Arc<RedisClientInner>, multiplexer: Multiplexer, force_no_backoff: bool) -> Box<Future<Item=InitState, Error=RedisError>> {
[INFO] [stderr]     |                                                                                                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=InitState, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/multiplexer/init.rs:414:154
[INFO] [stderr]     |
[INFO] [stderr] 414 | fn rebuild_connection(handle: Handle, inner: Arc<RedisClientInner>, multiplexer: Multiplexer, force_no_backoff: bool, last_command: RedisCommand) -> Box<Future<Item=(Handle, Arc<RedisClientInner>, Multiplexer, Option<RedisError>), Error=RedisError>> {
[INFO] [stderr]     |                                                                                                                                                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Handle, Arc<RedisClientInner>, Multiplexer, Option<RedisError>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/multiplexer/init.rs:498:76
[INFO] [stderr]     |
[INFO] [stderr] 498 | fn create_commands_ft(handle: Handle, inner: Arc<RedisClientInner>) -> Box<Future<Item=Option<RedisError>, Error=RedisError>> {
[INFO] [stderr]     |                                                                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Option<RedisError>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/multiplexer/init.rs:611:70
[INFO] [stderr]     |
[INFO] [stderr] 611 | pub fn connect(handle: &Handle, inner: Arc<RedisClientInner>) -> Box<Future<Item=Option<RedisError>, Error=RedisError>> {
[INFO] [stderr]     |                                                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Option<RedisError>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/multiplexer/mod.rs:162:97
[INFO] [stderr]     |
[INFO] [stderr] 162 |   pub fn write_command(&self, inner: &Arc<RedisClientInner>, request: &mut RedisCommand) -> Box<Future<Item=(), Error=RedisError>> {
[INFO] [stderr]     |                                                                                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/multiplexer/mod.rs:192:31
[INFO] [stderr]     |
[INFO] [stderr] 192 |   pub fn listen(&self) -> Box<Future<Item=(), Error=()>> {
[INFO] [stderr]     |                               ^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(), Error=()>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/error.rs:172:30
[INFO] [stderr]     |
[INFO] [stderr] 172 |   fn cause(&self) -> Option<&Error> {
[INFO] [stderr]     |                              ^^^^^ help: use `dyn`: `dyn Error`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/client.rs:61:33
[INFO] [stderr]    |
[INFO] [stderr] 61 | pub type ConnectionFuture = Box<Future<Item=Option<RedisError>, Error=RedisError>>;
[INFO] [stderr]    |                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Option<RedisError>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/client.rs:266:37
[INFO] [stderr]     |
[INFO] [stderr] 266 |   pub fn on_reconnect(&self) -> Box<Stream<Item=Self, Error=RedisError>> {
[INFO] [stderr]     |                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Stream<Item=Self, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/client.rs:278:35
[INFO] [stderr]     |
[INFO] [stderr] 278 |   pub fn on_connect(&self) -> Box<Future<Item=Self, Error=RedisError>> {
[INFO] [stderr]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Self, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/client.rs:293:33
[INFO] [stderr]     |
[INFO] [stderr] 293 |   pub fn on_error(&self) -> Box<Stream<Item=RedisError, Error=RedisError>> {
[INFO] [stderr]     |                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Stream<Item=RedisError, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/client.rs:304:35
[INFO] [stderr]     |
[INFO] [stderr] 304 |   pub fn on_message(&self) -> Box<Stream<Item=(String, RedisValue), Error=RedisError>> {
[INFO] [stderr]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Stream<Item=(String, RedisValue), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/client.rs:319:55
[INFO] [stderr]     |
[INFO] [stderr] 319 |   pub fn split_cluster(&self, handle: &Handle) -> Box<Future<Item=Vec<(RedisClient, RedisConfig)>, Error=RedisError>> {
[INFO] [stderr]     |                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<(RedisClient, RedisConfig)>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/client.rs:332:113
[INFO] [stderr]     |
[INFO] [stderr] 332 |   pub fn scan<P: Into<String>>(&self, pattern: Option<P>, count: Option<usize>, _type: Option<ScanType>) -> Box<Stream<Item=ScanResult, Error=RedisError>> {
[INFO] [stderr]     |                                                                                                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Stream<Item=ScanResult, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/client.rs:339:116
[INFO] [stderr]     |
[INFO] [stderr] 339 |   pub fn hscan<K: Into<RedisKey>, P: Into<String>>(&self, key: K, pattern: Option<P>, count: Option<usize>) -> Box<Stream<Item=HScanResult, Error=RedisError>> {
[INFO] [stderr]     |                                                                                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Stream<Item=HScanResult, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/client.rs:346:116
[INFO] [stderr]     |
[INFO] [stderr] 346 |   pub fn sscan<K: Into<RedisKey>, P: Into<String>>(&self, key: K, pattern: Option<P>, count: Option<usize>) -> Box<Stream<Item=SScanResult, Error=RedisError>> {
[INFO] [stderr]     |                                                                                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Stream<Item=SScanResult, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/client.rs:353:116
[INFO] [stderr]     |
[INFO] [stderr] 353 |   pub fn zscan<K: Into<RedisKey>, P: Into<String>>(&self, key: K, pattern: Option<P>, count: Option<usize>) -> Box<Stream<Item=ZScanResult, Error=RedisError>> {
[INFO] [stderr]     |                                                                                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Stream<Item=ZScanResult, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/commands.rs:41:51
[INFO] [stderr]    |
[INFO] [stderr] 41 | pub fn quit(inner: &Arc<RedisClientInner>) -> Box<Future<Item=(), Error=RedisError>> {
[INFO] [stderr]    |                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/commands.rs:83:69
[INFO] [stderr]    |
[INFO] [stderr] 83 | pub fn flushall(inner: &Arc<RedisClientInner>, _async: bool) -> Box<Future<Item=String, Error=RedisError>> {
[INFO] [stderr]    |                                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=String, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/commands.rs:103:77
[INFO] [stderr]     |
[INFO] [stderr] 103 | pub fn get<K: Into<RedisKey>>(inner: &Arc<RedisClientInner>, key: K) -> Box<Future<Item=Option<RedisValue>, Error=RedisError>> {
[INFO] [stderr]     |                                                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Option<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/commands.rs:119:165
[INFO] [stderr]     |
[INFO] [stderr] 119 | pub fn set<K: Into<RedisKey>, V: Into<RedisValue>>(inner: &Arc<RedisClientInner>, key: K, value: V, expire: Option<Expiration>, options: Option<SetOptions>) -> Box<Future<Item=bool, Error=RedisError>> {
[INFO] [stderr]     |                                                                                                                                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=bool, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/commands.rs:142:61
[INFO] [stderr]     |
[INFO] [stderr] 142 | pub fn select(inner: &Arc<RedisClientInner>, db: u8) -> Box<Future<Item=(), Error=RedisError>> {
[INFO] [stderr]     |                                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/commands.rs:155:78
[INFO] [stderr]     |
[INFO] [stderr] 155 | pub fn info(inner: &Arc<RedisClientInner>, section: Option<InfoKind>) -> Box<Future<Item=String, Error=RedisError>> {
[INFO] [stderr]     |                                                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=String, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/commands.rs:182:82
[INFO] [stderr]     |
[INFO] [stderr] 182 | pub fn del<K: Into<MultipleKeys>>(inner: &Arc<RedisClientInner>, keys: K) -> Box<Future<Item=usize, Error=RedisError>> {
[INFO] [stderr]     |                                                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/commands.rs:200:85
[INFO] [stderr]     |
[INFO] [stderr] 200 | pub fn subscribe<T: Into<String>>(inner: &Arc<RedisClientInner>, channel: T) -> Box<Future<Item=usize, Error=RedisError>> {
[INFO] [stderr]     |                                                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/commands.rs:227:87
[INFO] [stderr]     |
[INFO] [stderr] 227 | pub fn unsubscribe<T: Into<String>>(inner: &Arc<RedisClientInner>, channel: T) -> Box<Future<Item=usize, Error=RedisError>> {
[INFO] [stderr]     |                                                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/commands.rs:254:116
[INFO] [stderr]     |
[INFO] [stderr] 254 | pub fn publish<T: Into<String>, V: Into<RedisValue>>(inner: &Arc<RedisClientInner>, channel: T, message: V) -> Box<Future<Item=i64, Error=RedisError>> {
[INFO] [stderr]     |                                                                                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=i64, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/commands.rs:275:79
[INFO] [stderr]     |
[INFO] [stderr] 275 | pub fn incr<K: Into<RedisKey>> (inner: &Arc<RedisClientInner>, key: K) -> Box<Future<Item=i64, Error=RedisError>>  {
[INFO] [stderr]     |                                                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=i64, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/commands.rs:290:91
[INFO] [stderr]     |
[INFO] [stderr] 290 | pub fn incrby<K: Into<RedisKey>>(inner: &Arc<RedisClientInner>, key: K, incr: i64) -> Box<Future<Item=i64, Error=RedisError>> {
[INFO] [stderr]     |                                                                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=i64, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/commands.rs:307:96
[INFO] [stderr]     |
[INFO] [stderr] 307 | pub fn incrbyfloat<K: Into<RedisKey>>(inner: &Arc<RedisClientInner>, key: K, incr: f64) -> Box<Future<Item=f64, Error=RedisError>> {
[INFO] [stderr]     |                                                                                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=f64, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/commands.rs:327:78
[INFO] [stderr]     |
[INFO] [stderr] 327 | pub fn decr<K: Into<RedisKey>>(inner: &Arc<RedisClientInner>, key: K) -> Box<Future<Item=i64, Error=RedisError>> {
[INFO] [stderr]     |                                                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=i64, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/commands.rs:344:111
[INFO] [stderr]     |
[INFO] [stderr] 344 | pub fn decrby<V: Into<RedisValue>, K: Into<RedisKey>>(inner: &Arc<RedisClientInner>, key: K, value: V) -> Box<Future<Item=i64, Error=RedisError>> {
[INFO] [stderr]     |                                                                                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=i64, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/commands.rs:363:51
[INFO] [stderr]     |
[INFO] [stderr] 363 | pub fn ping(inner: &Arc<RedisClientInner>) -> Box<Future<Item=String, Error=RedisError>> {
[INFO] [stderr]     |                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=String, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/commands.rs:388:78
[INFO] [stderr]     |
[INFO] [stderr] 388 | pub fn auth<V: Into<String>>(inner: &Arc<RedisClientInner>, value: V) -> Box<Future<Item=String, Error=RedisError>> {
[INFO] [stderr]     |                                                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=String, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/commands.rs:405:59
[INFO] [stderr]     |
[INFO] [stderr] 405 | pub fn bgrewriteaof(inner: &Arc<RedisClientInner>) -> Box<Future<Item=String, Error=RedisError>> {
[INFO] [stderr]     |                                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=String, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/commands.rs:420:53
[INFO] [stderr]     |
[INFO] [stderr] 420 | pub fn bgsave(inner: &Arc<RedisClientInner>) -> Box<Future<Item=String, Error=RedisError>> {
[INFO] [stderr]     |                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=String, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/commands.rs:435:58
[INFO] [stderr]     |
[INFO] [stderr] 435 | pub fn client_list(inner: &Arc<RedisClientInner>) -> Box<Future<Item=String, Error=RedisError>> {
[INFO] [stderr]     |                                                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=String, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/commands.rs:452:61
[INFO] [stderr]     |
[INFO] [stderr] 452 | pub fn client_getname(inner: &Arc<RedisClientInner>) -> Box<Future<Item=Option<String>, Error=RedisError>> {
[INFO] [stderr]     |                                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Option<String>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/commands.rs:465:87
[INFO] [stderr]     |
[INFO] [stderr] 465 | pub fn client_setname<V: Into<String>>(inner: &Arc<RedisClientInner>, name: V) -> Box<Future<Item=Option<String>, Error=RedisError>> {
[INFO] [stderr]     |                                                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Option<String>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/commands.rs:481:53
[INFO] [stderr]     |
[INFO] [stderr] 481 | pub fn dbsize(inner: &Arc<RedisClientInner>) -> Box<Future<Item=usize, Error=RedisError>> {
[INFO] [stderr]     |                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/commands.rs:496:78
[INFO] [stderr]     |
[INFO] [stderr] 496 | pub fn dump<K: Into<RedisKey>>(inner: &Arc<RedisClientInner>, key: K) -> Box<Future<Item=Option<String>, Error=RedisError>> {
[INFO] [stderr]     |                                                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Option<String>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/commands.rs:514:85
[INFO] [stderr]     |
[INFO] [stderr] 514 | pub fn exists<K: Into<MultipleKeys>>(inner: &Arc<RedisClientInner>, keys: K) -> Box<Future<Item=usize, Error=RedisError>> {
[INFO] [stderr]     |                                                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/commands.rs:533:94
[INFO] [stderr]     |
[INFO] [stderr] 533 | pub fn expire<K: Into<RedisKey>>(inner: &Arc<RedisClientInner>, key: K, seconds: i64) -> Box<Future<Item=bool, Error=RedisError>> {
[INFO] [stderr]     |                                                                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=bool, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/commands.rs:559:99
[INFO] [stderr]     |
[INFO] [stderr] 559 | pub fn expire_at<K: Into<RedisKey>>(inner: &Arc<RedisClientInner>, key: K, timestamp: i64) -> Box<Future<Item=bool, Error=RedisError>> {
[INFO] [stderr]     |                                                                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=bool, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/commands.rs:584:81
[INFO] [stderr]     |
[INFO] [stderr] 584 | pub fn persist<K: Into<RedisKey>>(inner: &Arc<RedisClientInner>, key: K) -> Box<Future<Item=bool, Error=RedisError>> {
[INFO] [stderr]     |                                                                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=bool, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/commands.rs:607:68
[INFO] [stderr]     |
[INFO] [stderr] 607 | pub fn flushdb(inner: &Arc<RedisClientInner>, _async: bool) -> Box<Future<Item=String, Error=RedisError>> {
[INFO] [stderr]     |                                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=String, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/commands.rs:628:109
[INFO] [stderr]     |
[INFO] [stderr] 628 | pub fn getrange<K: Into<RedisKey>> (inner: &Arc<RedisClientInner>, key: K, start: usize, end: usize) -> Box<Future<Item=String, Error=RedisError>> {
[INFO] [stderr]     |                                                                                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=String, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/commands.rs:653:112
[INFO] [stderr]     |
[INFO] [stderr] 653 | pub fn getset<V: Into<RedisValue>, K: Into<RedisKey>> (inner: &Arc<RedisClientInner>, key: K, value: V) -> Box<Future<Item=Option<RedisValue>, Error=RedisError>> {
[INFO] [stderr]     |                                                                                                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Option<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/commands.rs:670:113
[INFO] [stderr]     |
[INFO] [stderr] 670 | pub fn hdel<F: Into<MultipleKeys>, K: Into<RedisKey>> (inner: &Arc<RedisClientInner>, key: K, fields: F) -> Box<Future<Item=usize, Error=RedisError>> {
[INFO] [stderr]     |                                                                                                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/commands.rs:695:111
[INFO] [stderr]     |
[INFO] [stderr] 695 | pub fn hexists<F: Into<RedisKey>, K: Into<RedisKey>> (inner: &Arc<RedisClientInner>, key: K, field: F) -> Box<Future<Item=bool, Error=RedisError>> {
[INFO] [stderr]     |                                                                                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=bool, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/commands.rs:721:108
[INFO] [stderr]     |
[INFO] [stderr] 721 | pub fn hget<F: Into<RedisKey>, K: Into<RedisKey>> (inner: &Arc<RedisClientInner>, key: K, field: F) -> Box<Future<Item=Option<RedisValue>, Error=RedisError>> {
[INFO] [stderr]     |                                                                                                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Option<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/commands.rs:739:82
[INFO] [stderr]     |
[INFO] [stderr] 739 | pub fn hgetall<K: Into<RedisKey>> (inner: &Arc<RedisClientInner>, key: K) -> Box<Future<Item=HashMap<String, RedisValue>, Error=RedisError>> {
[INFO] [stderr]     |                                                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=HashMap<String, RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/commands.rs:767:122
[INFO] [stderr]     |
[INFO] [stderr] 767 | pub fn hincrby<F: Into<RedisKey>, K: Into<RedisKey>> (inner: &Arc<RedisClientInner>, key: K, field: F, incr: i64) -> Box<Future<Item=i64, Error=RedisError>> {
[INFO] [stderr]     |                                                                                                                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=i64, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/commands.rs:790:127
[INFO] [stderr]     |
[INFO] [stderr] 790 | pub fn hincrbyfloat<K: Into<RedisKey>, F: Into<RedisKey>> (inner: &Arc<RedisClientInner>, key: K, field: F, incr: f64) -> Box<Future<Item=f64, Error=RedisError>> {
[INFO] [stderr]     |                                                                                                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=f64, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/commands.rs:818:80
[INFO] [stderr]     |
[INFO] [stderr] 818 | pub fn hkeys<K: Into<RedisKey>> (inner: &Arc<RedisClientInner>, key: K) -> Box<Future<Item=Vec<String>, Error=RedisError>> {
[INFO] [stderr]     |                                                                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<String>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/commands.rs:843:79
[INFO] [stderr]     |
[INFO] [stderr] 843 | pub fn hlen<K: Into<RedisKey>> (inner: &Arc<RedisClientInner>, key: K) -> Box<Future<Item=usize, Error=RedisError>> {
[INFO] [stderr]     |                                                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/commands.rs:860:114
[INFO] [stderr]     |
[INFO] [stderr] 860 | pub fn hmget<F: Into<MultipleKeys>, K: Into<RedisKey>> (inner: &Arc<RedisClientInner>, key: K, fields: F) -> Box<Future<Item=Vec<RedisValue>, Error=RedisError>> {
[INFO] [stderr]     |                                                                                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/commands.rs:878:159
[INFO] [stderr]     |
[INFO] [stderr] 878 | pub fn hmset<V: Into<RedisValue>, F: Into<RedisKey> + Hash + Eq, K: Into<RedisKey>> (inner: &Arc<RedisClientInner>, key: K, mut values: HashMap<F, V>) -> Box<Future<Item=String, Error=RedisError>> {
[INFO] [stderr]     |                                                                                                                                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=String, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/commands.rs:904:139
[INFO] [stderr]     |
[INFO] [stderr] 904 | pub fn hset<K: Into<RedisKey>, F: Into<RedisKey>, V: Into<RedisValue>> (inner: &Arc<RedisClientInner>, key: K, field: F, value: V) -> Box<Future<Item=usize, Error=RedisError>> {
[INFO] [stderr]     |                                                                                                                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/commands.rs:926:141
[INFO] [stderr]     |
[INFO] [stderr] 926 | pub fn hsetnx<K: Into<RedisKey>, F: Into<RedisKey>, V: Into<RedisValue>> (inner: &Arc<RedisClientInner>, key: K, field: F, value: V) -> Box<Future<Item=usize, Error=RedisError>> {
[INFO] [stderr]     |                                                                                                                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/commands.rs:945:111
[INFO] [stderr]     |
[INFO] [stderr] 945 | pub fn hstrlen<K: Into<RedisKey>, F: Into<RedisKey>> (inner: &Arc<RedisClientInner>, key: K, field: F) -> Box<Future<Item=usize, Error=RedisError>> {
[INFO] [stderr]     |                                                                                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/commands.rs:964:80
[INFO] [stderr]     |
[INFO] [stderr] 964 | pub fn hvals<K: Into<RedisKey>> (inner: &Arc<RedisClientInner>, key: K) -> Box<Future<Item=Vec<RedisValue>, Error=RedisError>> {
[INFO] [stderr]     |                                                                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/commands.rs:974:79
[INFO] [stderr]     |
[INFO] [stderr] 974 | pub fn llen<K: Into<RedisKey>> (inner: &Arc<RedisClientInner>, key: K) -> Box<Future<Item=usize, Error=RedisError>> {
[INFO] [stderr]     |                                                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/commands.rs:991:111
[INFO] [stderr]     |
[INFO] [stderr] 991 | pub fn lpush<K: Into<RedisKey>, V: Into<RedisValue>> (inner: &Arc<RedisClientInner>, key: K, value: V) -> Box<Future<Item=usize, Error=RedisError>> {
[INFO] [stderr]     |                                                                                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/commands.rs:1011:78
[INFO] [stderr]      |
[INFO] [stderr] 1011 | pub fn lpop<K: Into<RedisKey>>(inner: &Arc<RedisClientInner>, key: K) -> Box<Future<Item=Option<RedisValue>, Error=RedisError>> {
[INFO] [stderr]      |                                                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Option<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/commands.rs:1031:114
[INFO] [stderr]      |
[INFO] [stderr] 1031 | pub fn sadd<K: Into<RedisKey>, V: Into<MultipleValues>>(inner: &Arc<RedisClientInner>, key: K, values: V) -> Box<Future<Item=usize, Error=RedisError>> {
[INFO] [stderr]      |                                                                                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/commands.rs:1056:114
[INFO] [stderr]      |
[INFO] [stderr] 1056 | pub fn srem<K: Into<RedisKey>, V: Into<MultipleValues>>(inner: &Arc<RedisClientInner>, key: K, values: V) -> Box<Future<Item=usize, Error=RedisError>> {
[INFO] [stderr]      |                                                                                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/commands.rs:1081:83
[INFO] [stderr]      |
[INFO] [stderr] 1081 | pub fn smembers<K: Into<RedisKey>> (inner: &Arc<RedisClientInner>, key: K) -> Box<Future<Item=Vec<RedisValue>, Error=RedisError>> {
[INFO] [stderr]      |                                                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/commands.rs:1091:93
[INFO] [stderr]      |
[INFO] [stderr] 1091 | pub fn psubscribe<K: Into<MultipleKeys>>(inner: &Arc<RedisClientInner>, patterns: K) -> Box<Future<Item=Vec<usize>, Error=RedisError>> {
[INFO] [stderr]      |                                                                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<usize>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/commands.rs:1113:95
[INFO] [stderr]      |
[INFO] [stderr] 1113 | pub fn punsubscribe<K: Into<MultipleKeys>>(inner: &Arc<RedisClientInner>, patterns: K) -> Box<Future<Item=Vec<usize>, Error=RedisError>> {
[INFO] [stderr]      |                                                                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<usize>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/commands.rs:1135:135
[INFO] [stderr]      |
[INFO] [stderr] 1135 | pub fn scan<P: Into<String>>(inner: &Arc<RedisClientInner>, pattern: Option<P>, count: Option<usize>, _type: Option<ScanType>) -> Box<Stream<Item=ScanResult, Error=RedisError>> {
[INFO] [stderr]      |                                                                                                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Stream<Item=ScanResult, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/commands.rs:1180:138
[INFO] [stderr]      |
[INFO] [stderr] 1180 | pub fn hscan<K: Into<RedisKey>, P: Into<String>>(inner: &Arc<RedisClientInner>, key: K, pattern: Option<P>, count: Option<usize>) -> Box<Stream<Item=HScanResult, Error=RedisError>> {
[INFO] [stderr]      |                                                                                                                                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Stream<Item=HScanResult, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/commands.rs:1231:138
[INFO] [stderr]      |
[INFO] [stderr] 1231 | pub fn sscan<K: Into<RedisKey>, P: Into<String>>(inner: &Arc<RedisClientInner>, key: K, pattern: Option<P>, count: Option<usize>) -> Box<Stream<Item=SScanResult, Error=RedisError>> {
[INFO] [stderr]      |                                                                                                                                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Stream<Item=SScanResult, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/commands.rs:1282:138
[INFO] [stderr]      |
[INFO] [stderr] 1282 | pub fn zscan<K: Into<RedisKey>, P: Into<String>>(inner: &Arc<RedisClientInner>, key: K, pattern: Option<P>, count: Option<usize>) -> Box<Stream<Item=ZScanResult, Error=RedisError>> {
[INFO] [stderr]      |                                                                                                                                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Stream<Item=ZScanResult, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/commands.rs:1333:83
[INFO] [stderr]      |
[INFO] [stderr] 1333 | pub fn mget<K: Into<MultipleKeys>>(inner: &Arc<RedisClientInner>, keys: K) -> Box<Future<Item=Vec<RedisValue>, Error=RedisError>> {
[INFO] [stderr]      |                                                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/commands.rs:1349:174
[INFO] [stderr]      |
[INFO] [stderr] 1349 | pub fn zadd<K: Into<RedisKey>, V: Into<MultipleZaddValues>>(inner: &Arc<RedisClientInner>, key: K, options: Option<SetOptions>, changed: bool, incr: bool, values: V) -> Box<Future<Item=RedisValue, Error=RedisError>> {
[INFO] [stderr]      |                                                                                                                                                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=RedisValue, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/commands.rs:1378:79
[INFO] [stderr]      |
[INFO] [stderr] 1378 | pub fn zcard<K: Into<RedisKey>>(inner: &Arc<RedisClientInner>, key: K) -> Box<Future<Item=usize, Error=RedisError>> {
[INFO] [stderr]      |                                                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/commands.rs:1395:100
[INFO] [stderr]      |
[INFO] [stderr] 1395 | pub fn zcount<K: Into<RedisKey>>(inner: &Arc<RedisClientInner>, key: K, min: f64, max: f64) -> Box<Future<Item=usize, Error=RedisError>> {
[INFO] [stderr]      |                                                                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/commands.rs:1415:133
[INFO] [stderr]      |
[INFO] [stderr] 1415 | pub fn zlexcount<K: Into<RedisKey>, M: Into<String>, N: Into<String>>(inner: &Arc<RedisClientInner>, key: K, min: M, max: N) -> Box<Future<Item=usize, Error=RedisError>> {
[INFO] [stderr]      |                                                                                                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/commands.rs:1434:123
[INFO] [stderr]      |
[INFO] [stderr] 1434 | pub fn zincrby<K: Into<RedisKey>, V: Into<RedisValue>>(inner: &Arc<RedisClientInner>, key: K, incr: f64, value: V) -> Box<Future<Item=f64, Error=RedisError>> {
[INFO] [stderr]      |                                                                                                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=f64, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/commands.rs:1450:122
[INFO] [stderr]      |
[INFO] [stderr] 1450 | pub fn zrange<K: Into<RedisKey>>(inner: &Arc<RedisClientInner>, key: K, start: i64, stop: i64, with_scores: bool) -> Box<Future<Item=Vec<RedisValue>, Error=RedisError>> {
[INFO] [stderr]      |                                                                                                                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/commands.rs:1466:166
[INFO] [stderr]      |
[INFO] [stderr] 1466 | pub fn zrangebylex<K: Into<RedisKey>, M: Into<String>, N: Into<String>>(inner: &Arc<RedisClientInner>, key: K, min: M, max: N, limit: Option<(usize, usize)>) -> Box<Future<Item=Vec<RedisValue>, Error=RedisError>> {
[INFO] [stderr]      |                                                                                                                                                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/commands.rs:1486:157
[INFO] [stderr]      |
[INFO] [stderr] 1486 | pub fn zrangebyscore<K: Into<RedisKey>>(inner: &Arc<RedisClientInner>, key: K, min: f64, max: f64, with_scores: bool, limit: Option<(usize, usize)>) -> Box<Future<Item=Vec<RedisValue>, Error=RedisError>> {
[INFO] [stderr]      |                                                                                                                                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/commands.rs:1514:103
[INFO] [stderr]      |
[INFO] [stderr] 1514 | pub fn zpopmax<K: Into<RedisKey>>(inner: &Arc<RedisClientInner>, key: K, count: Option<usize>) -> Box<Future<Item=Vec<RedisValue>, Error=RedisError>> {
[INFO] [stderr]      |                                                                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/commands.rs:1531:103
[INFO] [stderr]      |
[INFO] [stderr] 1531 | pub fn zpopmin<K: Into<RedisKey>>(inner: &Arc<RedisClientInner>, key: K, count: Option<usize>) -> Box<Future<Item=Vec<RedisValue>, Error=RedisError>> {
[INFO] [stderr]      |                                                                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/commands.rs:1548:110
[INFO] [stderr]      |
[INFO] [stderr] 1548 | pub fn zrank<K: Into<RedisKey>, V: Into<RedisValue>>(inner: &Arc<RedisClientInner>, key: K, value: V) -> Box<Future<Item=RedisValue, Error=RedisError>> {
[INFO] [stderr]      |                                                                                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=RedisValue, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/commands.rs:1559:114
[INFO] [stderr]      |
[INFO] [stderr] 1559 | pub fn zrem<K: Into<RedisKey>, V: Into<MultipleValues>>(inner: &Arc<RedisClientInner>, key: K, values: V) -> Box<Future<Item=usize, Error=RedisError>> {
[INFO] [stderr]      |                                                                                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/commands.rs:1584:138
[INFO] [stderr]      |
[INFO] [stderr] 1584 | pub fn zremrangebylex<K: Into<RedisKey>, M: Into<String>, N: Into<String>>(inner: &Arc<RedisClientInner>, key: K, min: M, max: N) -> Box<Future<Item=usize, Error=RedisError>> {
[INFO] [stderr]      |                                                                                                                                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/commands.rs:1603:112
[INFO] [stderr]      |
[INFO] [stderr] 1603 | pub fn zremrangebyrank<K: Into<RedisKey>>(inner: &Arc<RedisClientInner>, key: K, start: i64, stop: i64) -> Box<Future<Item=usize, Error=RedisError>> {
[INFO] [stderr]      |                                                                                                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/commands.rs:1620:110
[INFO] [stderr]      |
[INFO] [stderr] 1620 | pub fn zremrangebyscore<K: Into<RedisKey>>(inner: &Arc<RedisClientInner>, key: K, min: f64, max: f64) -> Box<Future<Item=usize, Error=RedisError>> {
[INFO] [stderr]      |                                                                                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/commands.rs:1643:125
[INFO] [stderr]      |
[INFO] [stderr] 1643 | pub fn zrevrange<K: Into<RedisKey>>(inner: &Arc<RedisClientInner>, key: K, start: i64, stop: i64, with_scores: bool) -> Box<Future<Item=Vec<RedisValue>, Error=RedisError>> {
[INFO] [stderr]      |                                                                                                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/commands.rs:1662:169
[INFO] [stderr]      |
[INFO] [stderr] 1662 | pub fn zrevrangebylex<K: Into<RedisKey>, M: Into<String>, N: Into<String>>(inner: &Arc<RedisClientInner>, key: K, max: M, min: N, limit: Option<(usize, usize)>) -> Box<Future<Item=Vec<RedisValue>, Error=RedisError>> {
[INFO] [stderr]      |                                                                                                                                                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/commands.rs:1685:160
[INFO] [stderr]      |
[INFO] [stderr] 1685 | pub fn zrevrangebyscore<K: Into<RedisKey>>(inner: &Arc<RedisClientInner>, key: K, max: f64, min: f64, with_scores: bool, limit: Option<(usize, usize)>) -> Box<Future<Item=Vec<RedisValue>, Error=RedisError>> {
[INFO] [stderr]      |                                                                                                                                                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/commands.rs:1711:113
[INFO] [stderr]      |
[INFO] [stderr] 1711 | pub fn zrevrank<K: Into<RedisKey>, V: Into<RedisValue>>(inner: &Arc<RedisClientInner>, key: K, value: V) -> Box<Future<Item=RedisValue, Error=RedisError>> {
[INFO] [stderr]      |                                                                                                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=RedisValue, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/commands.rs:1722:111
[INFO] [stderr]      |
[INFO] [stderr] 1722 | pub fn zscore<K: Into<RedisKey>, V: Into<RedisValue>>(inner: &Arc<RedisClientInner>, key: K, value: V) -> Box<Future<Item=RedisValue, Error=RedisError>> {
[INFO] [stderr]      |                                                                                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=RedisValue, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/commands.rs:1738:10
[INFO] [stderr]      |
[INFO] [stderr] 1738 |   -> Box<Future<Item=usize, Error=RedisError>>
[INFO] [stderr]      |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/commands.rs:1787:10
[INFO] [stderr]      |
[INFO] [stderr] 1787 |   -> Box<Future<Item=usize, Error=RedisError>>
[INFO] [stderr]      |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/commands.rs:1831:77
[INFO] [stderr]      |
[INFO] [stderr] 1831 | pub fn ttl<K: Into<RedisKey>>(inner: &Arc<RedisClientInner>, key: K) -> Box<Future<Item=i64, Error=RedisError>> {
[INFO] [stderr]      |                                                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=i64, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]     --> src/commands.rs:1844:78
[INFO] [stderr]      |
[INFO] [stderr] 1844 | pub fn pttl<K: Into<RedisKey>>(inner: &Arc<RedisClientInner>, key: K) -> Box<Future<Item=i64, Error=RedisError>> {
[INFO] [stderr]      |                                                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=i64, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/borrowed.rs:46:25
[INFO] [stderr]    |
[INFO] [stderr] 46 |   fn quit(&self) -> Box<Future<Item=(), Error=RedisError>>;
[INFO] [stderr]    |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/borrowed.rs:48:43
[INFO] [stderr]    |
[INFO] [stderr] 48 |   fn flushall(&self, _async: bool) -> Box<Future<Item=String, Error=RedisError>>;
[INFO] [stderr]    |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=String, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/borrowed.rs:50:51
[INFO] [stderr]    |
[INFO] [stderr] 50 |   fn get<K: Into<RedisKey>>(&self, key: K) -> Box<Future<Item=Option<RedisValue>, Error=RedisError>>;
[INFO] [stderr]    |                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Option<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/borrowed.rs:52:139
[INFO] [stderr]    |
[INFO] [stderr] 52 |   fn set<K: Into<RedisKey>, V: Into<RedisValue>>(&self, key: K, value: V, expire: Option<Expiration>, options: Option<SetOptions>) -> Box<Future<Item=bool, Error=RedisError>>;
[INFO] [stderr]    |                                                                                                                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=bool, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/borrowed.rs:54:35
[INFO] [stderr]    |
[INFO] [stderr] 54 |   fn select(&self, db: u8) -> Box<Future<Item=(), Error=RedisError>>;
[INFO] [stderr]    |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/borrowed.rs:56:52
[INFO] [stderr]    |
[INFO] [stderr] 56 |   fn info(&self, section: Option<InfoKind>) -> Box<Future<Item=String, Error=RedisError>>;
[INFO] [stderr]    |                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=String, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/borrowed.rs:58:56
[INFO] [stderr]    |
[INFO] [stderr] 58 |   fn del<K: Into<MultipleKeys>>(&self, keys: K) -> Box<Future<Item=usize, Error=RedisError>>;
[INFO] [stderr]    |                                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/borrowed.rs:60:59
[INFO] [stderr]    |
[INFO] [stderr] 60 |   fn subscribe<T: Into<String>>(&self, channel: T) -> Box<Future<Item=usize, Error=RedisError>>;
[INFO] [stderr]    |                                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/borrowed.rs:62:61
[INFO] [stderr]    |
[INFO] [stderr] 62 |   fn unsubscribe<T: Into<String>>(&self, channel: T) -> Box<Future<Item=usize, Error=RedisError>>;
[INFO] [stderr]    |                                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/borrowed.rs:64:90
[INFO] [stderr]    |
[INFO] [stderr] 64 |   fn publish<T: Into<String>, V: Into<RedisValue>>(&self, channel: T, message: V) -> Box<Future<Item=i64, Error=RedisError>>;
[INFO] [stderr]    |                                                                                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=i64, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/borrowed.rs:66:52
[INFO] [stderr]    |
[INFO] [stderr] 66 |   fn decr<K: Into<RedisKey>>(&self, key: K) -> Box<Future<Item=i64, Error=RedisError>>;
[INFO] [stderr]    |                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=i64, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/borrowed.rs:68:85
[INFO] [stderr]    |
[INFO] [stderr] 68 |   fn decrby<K: Into<RedisKey>, V: Into<RedisValue>>(&self, key: K, value: V) -> Box<Future<Item=i64, Error=RedisError>>;
[INFO] [stderr]    |                                                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=i64, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/borrowed.rs:70:53
[INFO] [stderr]    |
[INFO] [stderr] 70 |   fn incr<K: Into<RedisKey>> (&self, key: K) -> Box<Future<Item=i64, Error=RedisError>>;
[INFO] [stderr]    |                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=i64, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/borrowed.rs:72:65
[INFO] [stderr]    |
[INFO] [stderr] 72 |   fn incrby<K: Into<RedisKey>>(&self, key: K, incr: i64) -> Box<Future<Item=i64, Error=RedisError>>;
[INFO] [stderr]    |                                                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=i64, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/borrowed.rs:74:70
[INFO] [stderr]    |
[INFO] [stderr] 74 |   fn incrbyfloat<K: Into<RedisKey>>(&self, key: K, incr: f64) -> Box<Future<Item=f64, Error=RedisError>>;
[INFO] [stderr]    |                                                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=f64, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/borrowed.rs:76:25
[INFO] [stderr]    |
[INFO] [stderr] 76 |   fn ping(&self) -> Box<Future<Item=String, Error=RedisError>>;
[INFO] [stderr]    |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=String, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/borrowed.rs:78:52
[INFO] [stderr]    |
[INFO] [stderr] 78 |   fn auth<V: Into<String>>(&self, value: V) -> Box<Future<Item=String, Error=RedisError>>;
[INFO] [stderr]    |                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=String, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/borrowed.rs:80:33
[INFO] [stderr]    |
[INFO] [stderr] 80 |   fn bgrewriteaof(&self) -> Box<Future<Item=String, Error=RedisError>>;
[INFO] [stderr]    |                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=String, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/borrowed.rs:82:27
[INFO] [stderr]    |
[INFO] [stderr] 82 |   fn bgsave(&self) -> Box<Future<Item=String, Error=RedisError>>;
[INFO] [stderr]    |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=String, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/borrowed.rs:84:32
[INFO] [stderr]    |
[INFO] [stderr] 84 |   fn client_list(&self) -> Box<Future<Item=String, Error=RedisError>>;
[INFO] [stderr]    |                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=String, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/borrowed.rs:86:35
[INFO] [stderr]    |
[INFO] [stderr] 86 |   fn client_getname(&self) -> Box<Future<Item=Option<String>, Error=RedisError>>;
[INFO] [stderr]    |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Option<String>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/borrowed.rs:88:61
[INFO] [stderr]    |
[INFO] [stderr] 88 |   fn client_setname<V: Into<String>>(&self, name: V) -> Box<Future<Item=Option<String>, Error=RedisError>>;
[INFO] [stderr]    |                                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Option<String>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/borrowed.rs:90:27
[INFO] [stderr]    |
[INFO] [stderr] 90 |   fn dbsize(&self) -> Box<Future<Item=usize, Error=RedisError>>;
[INFO] [stderr]    |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/borrowed.rs:92:52
[INFO] [stderr]    |
[INFO] [stderr] 92 |   fn dump<K: Into<RedisKey>>(&self, key: K) -> Box<Future<Item=Option<String>, Error=RedisError>>;
[INFO] [stderr]    |                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Option<String>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/borrowed.rs:94:59
[INFO] [stderr]    |
[INFO] [stderr] 94 |   fn exists<K: Into<MultipleKeys>>(&self, keys: K) -> Box<Future<Item=usize, Error=RedisError>>;
[INFO] [stderr]    |                                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/borrowed.rs:96:68
[INFO] [stderr]    |
[INFO] [stderr] 96 |   fn expire<K: Into<RedisKey>>(&self, key: K, seconds: i64) -> Box<Future<Item=bool, Error=RedisError>>;
[INFO] [stderr]    |                                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=bool, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/borrowed.rs:98:73
[INFO] [stderr]    |
[INFO] [stderr] 98 |   fn expire_at<K: Into<RedisKey>>(&self, key: K, timestamp: i64) -> Box<Future<Item=bool, Error=RedisError>>;
[INFO] [stderr]    |                                                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=bool, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:100:55
[INFO] [stderr]     |
[INFO] [stderr] 100 |   fn persist<K: Into<RedisKey>>(&self, key: K) -> Box<Future<Item=bool, Error=RedisError>>;
[INFO] [stderr]     |                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=bool, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:102:42
[INFO] [stderr]     |
[INFO] [stderr] 102 |   fn flushdb(&self, _async: bool) -> Box<Future<Item=String, Error=RedisError>>;
[INFO] [stderr]     |                                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=String, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:104:82
[INFO] [stderr]     |
[INFO] [stderr] 104 |   fn getrange<K: Into<RedisKey>>(&self, key: K, start: usize, end: usize) -> Box<Future<Item=String, Error=RedisError>>;
[INFO] [stderr]     |                                                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=String, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:106:85
[INFO] [stderr]     |
[INFO] [stderr] 106 |   fn getset<V: Into<RedisValue>, K: Into<RedisKey>>(&self, key: K, value: V) -> Box<Future<Item=Option<RedisValue>, Error=RedisError>>;
[INFO] [stderr]     |                                                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Option<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:108:86
[INFO] [stderr]     |
[INFO] [stderr] 108 |   fn hdel<F: Into<MultipleKeys>, K: Into<RedisKey>>(&self, key: K, fields: F) -> Box<Future<Item=usize, Error=RedisError>>;
[INFO] [stderr]     |                                                                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:110:84
[INFO] [stderr]     |
[INFO] [stderr] 110 |   fn hexists<F: Into<RedisKey>, K: Into<RedisKey>>(&self, key: K, field: F) -> Box<Future<Item=bool, Error=RedisError>>;
[INFO] [stderr]     |                                                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=bool, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:112:81
[INFO] [stderr]     |
[INFO] [stderr] 112 |   fn hget<F: Into<RedisKey>, K: Into<RedisKey>>(&self, key: K, field: F) -> Box<Future<Item=Option<RedisValue>, Error=RedisError>>;
[INFO] [stderr]     |                                                                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Option<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:114:55
[INFO] [stderr]     |
[INFO] [stderr] 114 |   fn hgetall<K: Into<RedisKey>>(&self, key: K) -> Box<Future<Item=HashMap<String, RedisValue>, Error=RedisError>>;
[INFO] [stderr]     |                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=HashMap<String, RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:116:95
[INFO] [stderr]     |
[INFO] [stderr] 116 |   fn hincrby<F: Into<RedisKey>, K: Into<RedisKey>>(&self, key: K, field: F, incr: i64) -> Box<Future<Item=i64, Error=RedisError>>;
[INFO] [stderr]     |                                                                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=i64, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:118:100
[INFO] [stderr]     |
[INFO] [stderr] 118 |   fn hincrbyfloat<K: Into<RedisKey>, F: Into<RedisKey>>(&self, key: K, field: F, incr: f64) -> Box<Future<Item=f64, Error=RedisError>>;
[INFO] [stderr]     |                                                                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=f64, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:120:53
[INFO] [stderr]     |
[INFO] [stderr] 120 |   fn hkeys<K: Into<RedisKey>>(&self, key: K) -> Box<Future<Item=Vec<String>, Error=RedisError>>;
[INFO] [stderr]     |                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<String>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:122:52
[INFO] [stderr]     |
[INFO] [stderr] 122 |   fn hlen<K: Into<RedisKey>>(&self, key: K) -> Box<Future<Item=usize, Error=RedisError>>;
[INFO] [stderr]     |                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:124:87
[INFO] [stderr]     |
[INFO] [stderr] 124 |   fn hmget<F: Into<MultipleKeys>, K: Into<RedisKey>>(&self, key: K, fields: F) -> Box<Future<Item=Vec<RedisValue>, Error=RedisError>>;
[INFO] [stderr]     |                                                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:126:128
[INFO] [stderr]     |
[INFO] [stderr] 126 |   fn hmset<V: Into<RedisValue>, F: Into<RedisKey> + Hash + Eq, K: Into<RedisKey>>(&self, key: K, values: HashMap<F, V>) -> Box<Future<Item=String, Error=RedisError>>;
[INFO] [stderr]     |                                                                                                                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=String, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:128:112
[INFO] [stderr]     |
[INFO] [stderr] 128 |   fn hset<K: Into<RedisKey>, F: Into<RedisKey>, V: Into<RedisValue>>(&self, key: K, field: F, value: V) -> Box<Future<Item=usize, Error=RedisError>>;
[INFO] [stderr]     |                                                                                                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:130:114
[INFO] [stderr]     |
[INFO] [stderr] 130 |   fn hsetnx<K: Into<RedisKey>, F: Into<RedisKey>, V: Into<RedisValue>>(&self, key: K, field: F, value: V) -> Box<Future<Item=usize, Error=RedisError>>;
[INFO] [stderr]     |                                                                                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:132:84
[INFO] [stderr]     |
[INFO] [stderr] 132 |   fn hstrlen<K: Into<RedisKey>, F: Into<RedisKey>>(&self, key: K, field: F) -> Box<Future<Item=usize, Error=RedisError>>;
[INFO] [stderr]     |                                                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:134:53
[INFO] [stderr]     |
[INFO] [stderr] 134 |   fn hvals<K: Into<RedisKey>>(&self, key: K) -> Box<Future<Item=Vec<RedisValue>, Error=RedisError>>;
[INFO] [stderr]     |                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:136:52
[INFO] [stderr]     |
[INFO] [stderr] 136 |   fn llen<K: Into<RedisKey>>(&self, key: K) -> Box<Future<Item=usize, Error=RedisError>>;
[INFO] [stderr]     |                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:138:84
[INFO] [stderr]     |
[INFO] [stderr] 138 |   fn lpush<K: Into<RedisKey>, V: Into<RedisValue>>(&self, key: K, value: V) -> Box<Future<Item=usize, Error=RedisError>>;
[INFO] [stderr]     |                                                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:140:52
[INFO] [stderr]     |
[INFO] [stderr] 140 |   fn lpop<K: Into<RedisKey>>(&self, key: K) -> Box<Future<Item=Option<RedisValue>, Error=RedisError>>;
[INFO] [stderr]     |                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Option<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:142:88
[INFO] [stderr]     |
[INFO] [stderr] 142 |   fn sadd<K: Into<RedisKey>, V: Into<MultipleValues>>(&self, key: K, values: V) -> Box<Future<Item=usize, Error=RedisError>>;
[INFO] [stderr]     |                                                                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:144:88
[INFO] [stderr]     |
[INFO] [stderr] 144 |   fn srem<K: Into<RedisKey>, V: Into<MultipleValues>>(&self, key: K, values: V) -> Box<Future<Item=usize, Error=RedisError>>;
[INFO] [stderr]     |                                                                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:146:56
[INFO] [stderr]     |
[INFO] [stderr] 146 |   fn smembers<K: Into<RedisKey>>(&self, key: K) -> Box<Future<Item=Vec<RedisValue>, Error=RedisError>>;
[INFO] [stderr]     |                                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:148:67
[INFO] [stderr]     |
[INFO] [stderr] 148 |   fn psubscribe<K: Into<MultipleKeys>>(&self, patterns: K) -> Box<Future<Item=Vec<usize>, Error=RedisError>>;
[INFO] [stderr]     |                                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<usize>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:150:69
[INFO] [stderr]     |
[INFO] [stderr] 150 |   fn punsubscribe<K: Into<MultipleKeys>>(&self, patterns: K) -> Box<Future<Item=Vec<usize>, Error=RedisError>>;
[INFO] [stderr]     |                                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<usize>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:152:57
[INFO] [stderr]     |
[INFO] [stderr] 152 |   fn mget<K: Into<MultipleKeys>>(&self, keys: K) -> Box<Future<Item=Vec<RedisValue>, Error=RedisError>>;
[INFO] [stderr]     |                                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:154:148
[INFO] [stderr]     |
[INFO] [stderr] 154 |   fn zadd<K: Into<RedisKey>, V: Into<MultipleZaddValues>>(&self, key: K, options: Option<SetOptions>, changed: bool, incr: bool, values: V) -> Box<Future<Item=RedisValue, Error=RedisError>>;
[INFO] [stderr]     |                                                                                                                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=RedisValue, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:156:53
[INFO] [stderr]     |
[INFO] [stderr] 156 |   fn zcard<K: Into<RedisKey>>(&self, key: K) -> Box<Future<Item=usize, Error=RedisError>>;
[INFO] [stderr]     |                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:158:74
[INFO] [stderr]     |
[INFO] [stderr] 158 |   fn zcount<K: Into<RedisKey>>(&self, key: K, min: f64, max: f64) -> Box<Future<Item=usize, Error=RedisError>>;
[INFO] [stderr]     |                                                                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:160:107
[INFO] [stderr]     |
[INFO] [stderr] 160 |   fn zlexcount<K: Into<RedisKey>, M: Into<String>, N: Into<String>>(&self, key: K, min: M, max: N) -> Box<Future<Item=usize, Error=RedisError>>;
[INFO] [stderr]     |                                                                                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:162:97
[INFO] [stderr]     |
[INFO] [stderr] 162 |   fn zincrby<K: Into<RedisKey>, V: Into<RedisValue>>(&self, key: K, incr: f64, value: V) -> Box<Future<Item=f64, Error=RedisError>>;
[INFO] [stderr]     |                                                                                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=f64, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:164:96
[INFO] [stderr]     |
[INFO] [stderr] 164 |   fn zrange<K: Into<RedisKey>>(&self, key: K, start: i64, stop: i64, with_scores: bool) -> Box<Future<Item=Vec<RedisValue>, Error=RedisError>>;
[INFO] [stderr]     |                                                                                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:166:140
[INFO] [stderr]     |
[INFO] [stderr] 166 |   fn zrangebylex<K: Into<RedisKey>, M: Into<String>, N: Into<String>>(&self, key: K, min: M, max: N, limit: Option<(usize, usize)>) -> Box<Future<Item=Vec<RedisValue>, Error=RedisError>>;
[INFO] [stderr]     |                                                                                                                                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:168:131
[INFO] [stderr]     |
[INFO] [stderr] 168 |   fn zrangebyscore<K: Into<RedisKey>>(&self, key: K, min: f64, max: f64, with_scores: bool, limit: Option<(usize, usize)>) -> Box<Future<Item=Vec<RedisValue>, Error=RedisError>>;
[INFO] [stderr]     |                                                                                                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:170:77
[INFO] [stderr]     |
[INFO] [stderr] 170 |   fn zpopmax<K: Into<RedisKey>>(&self, key: K, count: Option<usize>) -> Box<Future<Item=Vec<RedisValue>, Error=RedisError>>;
[INFO] [stderr]     |                                                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:172:77
[INFO] [stderr]     |
[INFO] [stderr] 172 |   fn zpopmin<K: Into<RedisKey>>(&self, key: K, count: Option<usize>) -> Box<Future<Item=Vec<RedisValue>, Error=RedisError>>;
[INFO] [stderr]     |                                                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:174:84
[INFO] [stderr]     |
[INFO] [stderr] 174 |   fn zrank<K: Into<RedisKey>, V: Into<RedisValue>>(&self, key: K, value: V) -> Box<Future<Item=RedisValue, Error=RedisError>>;
[INFO] [stderr]     |                                                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=RedisValue, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:176:88
[INFO] [stderr]     |
[INFO] [stderr] 176 |   fn zrem<K: Into<RedisKey>, V: Into<MultipleValues>>(&self, key: K, values: V) -> Box<Future<Item=usize, Error=RedisError>>;
[INFO] [stderr]     |                                                                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:178:112
[INFO] [stderr]     |
[INFO] [stderr] 178 |   fn zremrangebylex<K: Into<RedisKey>, M: Into<String>, N: Into<String>>(&self, key: K, min: M, max: N) -> Box<Future<Item=usize, Error=RedisError>>;
[INFO] [stderr]     |                                                                                                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:180:86
[INFO] [stderr]     |
[INFO] [stderr] 180 |   fn zremrangebyrank<K: Into<RedisKey>>(&self, key: K, start: i64, stop: i64) -> Box<Future<Item=usize, Error=RedisError>>;
[INFO] [stderr]     |                                                                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:182:84
[INFO] [stderr]     |
[INFO] [stderr] 182 |   fn zremrangebyscore<K: Into<RedisKey>>(&self, key: K, min: f64, max: f64) -> Box<Future<Item=usize, Error=RedisError>>;
[INFO] [stderr]     |                                                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:184:99
[INFO] [stderr]     |
[INFO] [stderr] 184 |   fn zrevrange<K: Into<RedisKey>>(&self, key: K, start: i64, stop: i64, with_scores: bool) -> Box<Future<Item=Vec<RedisValue>, Error=RedisError>>;
[INFO] [stderr]     |                                                                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:186:143
[INFO] [stderr]     |
[INFO] [stderr] 186 |   fn zrevrangebylex<K: Into<RedisKey>, M: Into<String>, N: Into<String>>(&self, key: K, max: M, min: N, limit: Option<(usize, usize)>) -> Box<Future<Item=Vec<RedisValue>, Error=RedisError>>;
[INFO] [stderr]     |                                                                                                                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:188:134
[INFO] [stderr]     |
[INFO] [stderr] 188 |   fn zrevrangebyscore<K: Into<RedisKey>>(&self, key: K, max: f64, min: f64, with_scores: bool, limit: Option<(usize, usize)>) -> Box<Future<Item=Vec<RedisValue>, Error=RedisError>>;
[INFO] [stderr]     |                                                                                                                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:190:87
[INFO] [stderr]     |
[INFO] [stderr] 190 |   fn zrevrank<K: Into<RedisKey>, V: Into<RedisValue>>(&self, key: K, value: V) -> Box<Future<Item=RedisValue, Error=RedisError>>;
[INFO] [stderr]     |                                                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=RedisValue, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:192:85
[INFO] [stderr]     |
[INFO] [stderr] 192 |   fn zscore<K: Into<RedisKey>, V: Into<RedisValue>>(&self, key: K, value: V) -> Box<Future<Item=RedisValue, Error=RedisError>>;
[INFO] [stderr]     |                                                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=RedisValue, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:199:12
[INFO] [stderr]     |
[INFO] [stderr] 199 |     -> Box<Future<Item=usize, Error=RedisError>>;
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:206:12
[INFO] [stderr]     |
[INFO] [stderr] 206 |     -> Box<Future<Item=usize, Error=RedisError>>;
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:208:51
[INFO] [stderr]     |
[INFO] [stderr] 208 |   fn ttl<K: Into<RedisKey>>(&self, key: K) -> Box<Future<Item=i64, Error=RedisError>>;
[INFO] [stderr]     |                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=i64, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:210:52
[INFO] [stderr]     |
[INFO] [stderr] 210 |   fn pttl<K: Into<RedisKey>>(&self, key: K) -> Box<Future<Item=i64, Error=RedisError>>;
[INFO] [stderr]     |                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=i64, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:227:25
[INFO] [stderr]     |
[INFO] [stderr] 227 |   fn quit(&self) -> Box<Future<Item=(), Error=RedisError>> {
[INFO] [stderr]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:235:43
[INFO] [stderr]     |
[INFO] [stderr] 235 |   fn flushall(&self, _async: bool) -> Box<Future<Item=String, Error=RedisError>> {
[INFO] [stderr]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=String, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:243:139
[INFO] [stderr]     |
[INFO] [stderr] 243 |   fn set<K: Into<RedisKey>, V: Into<RedisValue>>(&self, key: K, value: V, expire: Option<Expiration>, options: Option<SetOptions>) -> Box<Future<Item=bool, Error=RedisError>> {
[INFO] [stderr]     |                                                                                                                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=bool, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:250:51
[INFO] [stderr]     |
[INFO] [stderr] 250 |   fn get<K: Into<RedisKey>>(&self, key: K) -> Box<Future<Item=Option<RedisValue>, Error=RedisError>> {
[INFO] [stderr]     |                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Option<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:257:35
[INFO] [stderr]     |
[INFO] [stderr] 257 |   fn select(&self, db: u8) -> Box<Future<Item=(), Error=RedisError>> {
[INFO] [stderr]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:264:52
[INFO] [stderr]     |
[INFO] [stderr] 264 |   fn info(&self, section: Option<InfoKind>) -> Box<Future<Item=String, Error=RedisError>> {
[INFO] [stderr]     |                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=String, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:272:56
[INFO] [stderr]     |
[INFO] [stderr] 272 |   fn del<K: Into<MultipleKeys>>(&self, keys: K) -> Box<Future<Item=usize, Error=RedisError>> {
[INFO] [stderr]     |                                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:281:59
[INFO] [stderr]     |
[INFO] [stderr] 281 |   fn subscribe<T: Into<String>>(&self, channel: T) -> Box<Future<Item=usize, Error=RedisError>> {
[INFO] [stderr]     |                                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:288:61
[INFO] [stderr]     |
[INFO] [stderr] 288 |   fn unsubscribe<T: Into<String>>(&self, channel: T) -> Box<Future<Item=usize, Error=RedisError>> {
[INFO] [stderr]     |                                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:295:90
[INFO] [stderr]     |
[INFO] [stderr] 295 |   fn publish<T: Into<String>, V: Into<RedisValue>>(&self, channel: T, message: V) -> Box<Future<Item=i64, Error=RedisError>> {
[INFO] [stderr]     |                                                                                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=i64, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:303:52
[INFO] [stderr]     |
[INFO] [stderr] 303 |   fn decr<K: Into<RedisKey>>(&self, key: K) -> Box<Future<Item=i64, Error=RedisError>> {
[INFO] [stderr]     |                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=i64, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:311:85
[INFO] [stderr]     |
[INFO] [stderr] 311 |   fn decrby<K: Into<RedisKey>, V: Into<RedisValue>>(&self, key: K, value: V) -> Box<Future<Item=i64, Error=RedisError>> {
[INFO] [stderr]     |                                                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=i64, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:319:53
[INFO] [stderr]     |
[INFO] [stderr] 319 |   fn incr<K: Into<RedisKey>> (&self, key: K) -> Box<Future<Item=i64, Error=RedisError>> {
[INFO] [stderr]     |                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=i64, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:327:65
[INFO] [stderr]     |
[INFO] [stderr] 327 |   fn incrby<K: Into<RedisKey>>(&self, key: K, incr: i64) -> Box<Future<Item=i64, Error=RedisError>> {
[INFO] [stderr]     |                                                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=i64, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:335:70
[INFO] [stderr]     |
[INFO] [stderr] 335 |   fn incrbyfloat<K: Into<RedisKey>>(&self, key: K, incr: f64) -> Box<Future<Item=f64, Error=RedisError>> {
[INFO] [stderr]     |                                                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=f64, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:342:25
[INFO] [stderr]     |
[INFO] [stderr] 342 |   fn ping(&self) -> Box<Future<Item=String, Error=RedisError>> {
[INFO] [stderr]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=String, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:349:52
[INFO] [stderr]     |
[INFO] [stderr] 349 |   fn auth<V: Into<String>>(&self, value: V) -> Box<Future<Item=String, Error=RedisError>> {
[INFO] [stderr]     |                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=String, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:356:33
[INFO] [stderr]     |
[INFO] [stderr] 356 |   fn bgrewriteaof(&self) -> Box<Future<Item=String, Error=RedisError>> {
[INFO] [stderr]     |                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=String, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:363:27
[INFO] [stderr]     |
[INFO] [stderr] 363 |   fn bgsave(&self) -> Box<Future<Item=String, Error=RedisError>> {
[INFO] [stderr]     |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=String, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:370:32
[INFO] [stderr]     |
[INFO] [stderr] 370 |   fn client_list(&self) -> Box<Future<Item=String, Error=RedisError>> {
[INFO] [stderr]     |                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=String, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:377:35
[INFO] [stderr]     |
[INFO] [stderr] 377 |   fn client_getname(&self) -> Box<Future<Item=Option<String>, Error=RedisError>> {
[INFO] [stderr]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Option<String>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:384:61
[INFO] [stderr]     |
[INFO] [stderr] 384 |   fn client_setname<V: Into<String>>(&self, name: V) -> Box<Future<Item=Option<String>, Error=RedisError>> {
[INFO] [stderr]     |                                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Option<String>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:391:27
[INFO] [stderr]     |
[INFO] [stderr] 391 |   fn dbsize(&self) -> Box<Future<Item=usize, Error=RedisError>> {
[INFO] [stderr]     |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:399:52
[INFO] [stderr]     |
[INFO] [stderr] 399 |   fn dump<K: Into<RedisKey>>(&self, key: K) -> Box<Future<Item=Option<String>, Error=RedisError>> {
[INFO] [stderr]     |                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Option<String>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:406:59
[INFO] [stderr]     |
[INFO] [stderr] 406 |   fn exists<K: Into<MultipleKeys>>(&self, keys: K) -> Box<Future<Item=usize, Error=RedisError>> {
[INFO] [stderr]     |                                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:414:68
[INFO] [stderr]     |
[INFO] [stderr] 414 |   fn expire<K: Into<RedisKey>>(&self, key: K, seconds: i64) -> Box<Future<Item=bool, Error=RedisError>> {
[INFO] [stderr]     |                                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=bool, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:422:73
[INFO] [stderr]     |
[INFO] [stderr] 422 |   fn expire_at<K: Into<RedisKey>>(&self, key: K, timestamp: i64) -> Box<Future<Item=bool, Error=RedisError>> {
[INFO] [stderr]     |                                                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=bool, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:431:55
[INFO] [stderr]     |
[INFO] [stderr] 431 |   fn persist<K: Into<RedisKey>>(&self, key: K) -> Box<Future<Item=bool, Error=RedisError>>{
[INFO] [stderr]     |                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=bool, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:439:42
[INFO] [stderr]     |
[INFO] [stderr] 439 |   fn flushdb(&self, _async: bool) -> Box<Future<Item=String, Error=RedisError>> {
[INFO] [stderr]     |                                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=String, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:447:82
[INFO] [stderr]     |
[INFO] [stderr] 447 |   fn getrange<K: Into<RedisKey>>(&self, key: K, start: usize, end: usize) -> Box<Future<Item=String, Error=RedisError>> {
[INFO] [stderr]     |                                                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=String, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:455:85
[INFO] [stderr]     |
[INFO] [stderr] 455 |   fn getset<V: Into<RedisValue>, K: Into<RedisKey>>(&self, key: K, value: V) -> Box<Future<Item=Option<RedisValue>, Error=RedisError>> {
[INFO] [stderr]     |                                                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Option<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:463:86
[INFO] [stderr]     |
[INFO] [stderr] 463 |   fn hdel<F: Into<MultipleKeys>, K: Into<RedisKey>>(&self, key: K, fields: F) -> Box<Future<Item=usize, Error=RedisError>> {
[INFO] [stderr]     |                                                                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:470:84
[INFO] [stderr]     |
[INFO] [stderr] 470 |   fn hexists<F: Into<RedisKey>, K: Into<RedisKey>>(&self, key: K, field: F) -> Box<Future<Item=bool, Error=RedisError>> {
[INFO] [stderr]     |                                                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=bool, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:477:81
[INFO] [stderr]     |
[INFO] [stderr] 477 |   fn hget<F: Into<RedisKey>, K: Into<RedisKey>>(&self, key: K, field: F) -> Box<Future<Item=Option<RedisValue>, Error=RedisError>> {
[INFO] [stderr]     |                                                                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Option<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:485:55
[INFO] [stderr]     |
[INFO] [stderr] 485 |   fn hgetall<K: Into<RedisKey>>(&self, key: K) -> Box<Future<Item=HashMap<String, RedisValue>, Error=RedisError>> {
[INFO] [stderr]     |                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=HashMap<String, RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:493:95
[INFO] [stderr]     |
[INFO] [stderr] 493 |   fn hincrby<F: Into<RedisKey>, K: Into<RedisKey>>(&self, key: K, field: F, incr: i64) -> Box<Future<Item=i64, Error=RedisError>> {
[INFO] [stderr]     |                                                                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=i64, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:502:100
[INFO] [stderr]     |
[INFO] [stderr] 502 |   fn hincrbyfloat<K: Into<RedisKey>, F: Into<RedisKey>>(&self, key: K, field: F, incr: f64) -> Box<Future<Item=f64, Error=RedisError>> {
[INFO] [stderr]     |                                                                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=f64, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:511:53
[INFO] [stderr]     |
[INFO] [stderr] 511 |   fn hkeys<K: Into<RedisKey>>(&self, key: K) -> Box<Future<Item=Vec<String>, Error=RedisError>> {
[INFO] [stderr]     |                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<String>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:518:52
[INFO] [stderr]     |
[INFO] [stderr] 518 |   fn hlen<K: Into<RedisKey>>(&self, key: K) -> Box<Future<Item=usize, Error=RedisError>> {
[INFO] [stderr]     |                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:526:87
[INFO] [stderr]     |
[INFO] [stderr] 526 |   fn hmget<F: Into<MultipleKeys>, K: Into<RedisKey>>(&self, key: K, fields: F) -> Box<Future<Item=Vec<RedisValue>, Error=RedisError>> {
[INFO] [stderr]     |                                                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:534:132
[INFO] [stderr]     |
[INFO] [stderr] 534 |   fn hmset<V: Into<RedisValue>, F: Into<RedisKey> + Hash + Eq, K: Into<RedisKey>>(&self, key: K, mut values: HashMap<F, V>) -> Box<Future<Item=String, Error=RedisError>> {
[INFO] [stderr]     |                                                                                                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=String, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:543:112
[INFO] [stderr]     |
[INFO] [stderr] 543 |   fn hset<K: Into<RedisKey>, F: Into<RedisKey>, V: Into<RedisValue>>(&self, key: K, field: F, value: V) -> Box<Future<Item=usize, Error=RedisError>> {
[INFO] [stderr]     |                                                                                                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:552:114
[INFO] [stderr]     |
[INFO] [stderr] 552 |   fn hsetnx<K: Into<RedisKey>, F: Into<RedisKey>, V: Into<RedisValue>>(&self, key: K, field: F, value: V) -> Box<Future<Item=usize, Error=RedisError>> {
[INFO] [stderr]     |                                                                                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:560:84
[INFO] [stderr]     |
[INFO] [stderr] 560 |   fn hstrlen<K: Into<RedisKey>, F: Into<RedisKey>>(&self, key: K, field: F) -> Box<Future<Item=usize, Error=RedisError>> {
[INFO] [stderr]     |                                                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:568:53
[INFO] [stderr]     |
[INFO] [stderr] 568 |   fn hvals<K: Into<RedisKey>>(&self, key: K) -> Box<Future<Item=Vec<RedisValue>, Error=RedisError>> {
[INFO] [stderr]     |                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:577:52
[INFO] [stderr]     |
[INFO] [stderr] 577 |   fn llen<K: Into<RedisKey>>(&self, key: K) -> Box<Future<Item=usize, Error=RedisError>> {
[INFO] [stderr]     |                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:586:84
[INFO] [stderr]     |
[INFO] [stderr] 586 |   fn lpush<K: Into<RedisKey>, V: Into<RedisValue>>(&self, key: K, value: V) -> Box<Future<Item=usize, Error=RedisError>> {
[INFO] [stderr]     |                                                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:593:52
[INFO] [stderr]     |
[INFO] [stderr] 593 |   fn lpop<K: Into<RedisKey>>(&self, key: K) -> Box<Future<Item=Option<RedisValue>, Error=RedisError>> {
[INFO] [stderr]     |                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Option<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:602:88
[INFO] [stderr]     |
[INFO] [stderr] 602 |   fn sadd<K: Into<RedisKey>, V: Into<MultipleValues>>(&self, key: K, values: V) -> Box<Future<Item=usize, Error=RedisError>> {
[INFO] [stderr]     |                                                                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:611:88
[INFO] [stderr]     |
[INFO] [stderr] 611 |   fn srem<K: Into<RedisKey>, V: Into<MultipleValues>>(&self, key: K, values: V) -> Box<Future<Item=usize, Error=RedisError>> {
[INFO] [stderr]     |                                                                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:619:56
[INFO] [stderr]     |
[INFO] [stderr] 619 |   fn smembers<K: Into<RedisKey>>(&self, key: K) -> Box<Future<Item=Vec<RedisValue>, Error=RedisError>> {
[INFO] [stderr]     |                                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:628:67
[INFO] [stderr]     |
[INFO] [stderr] 628 |   fn psubscribe<K: Into<MultipleKeys>>(&self, patterns: K) -> Box<Future<Item=Vec<usize>, Error=RedisError>> {
[INFO] [stderr]     |                                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<usize>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:637:69
[INFO] [stderr]     |
[INFO] [stderr] 637 |   fn punsubscribe<K: Into<MultipleKeys>>(&self, patterns: K) -> Box<Future<Item=Vec<usize>, Error=RedisError>> {
[INFO] [stderr]     |                                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<usize>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:644:57
[INFO] [stderr]     |
[INFO] [stderr] 644 |   fn mget<K: Into<MultipleKeys>>(&self, keys: K) -> Box<Future<Item=Vec<RedisValue>, Error=RedisError>> {
[INFO] [stderr]     |                                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:651:148
[INFO] [stderr]     |
[INFO] [stderr] 651 |   fn zadd<K: Into<RedisKey>, V: Into<MultipleZaddValues>>(&self, key: K, options: Option<SetOptions>, changed: bool, incr: bool, values: V) -> Box<Future<Item=RedisValue, Error=RedisError>> {
[INFO] [stderr]     |                                                                                                                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=RedisValue, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:658:53
[INFO] [stderr]     |
[INFO] [stderr] 658 |   fn zcard<K: Into<RedisKey>>(&self, key: K) -> Box<Future<Item=usize, Error=RedisError>> {
[INFO] [stderr]     |                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:665:74
[INFO] [stderr]     |
[INFO] [stderr] 665 |   fn zcount<K: Into<RedisKey>>(&self, key: K, min: f64, max: f64) -> Box<Future<Item=usize, Error=RedisError>> {
[INFO] [stderr]     |                                                                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:672:107
[INFO] [stderr]     |
[INFO] [stderr] 672 |   fn zlexcount<K: Into<RedisKey>, M: Into<String>, N: Into<String>>(&self, key: K, min: M, max: N) -> Box<Future<Item=usize, Error=RedisError>> {
[INFO] [stderr]     |                                                                                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:679:97
[INFO] [stderr]     |
[INFO] [stderr] 679 |   fn zincrby<K: Into<RedisKey>, V: Into<RedisValue>>(&self, key: K, incr: f64, value: V) -> Box<Future<Item=f64, Error=RedisError>> {
[INFO] [stderr]     |                                                                                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=f64, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:686:96
[INFO] [stderr]     |
[INFO] [stderr] 686 |   fn zrange<K: Into<RedisKey>>(&self, key: K, start: i64, stop: i64, with_scores: bool) -> Box<Future<Item=Vec<RedisValue>, Error=RedisError>> {
[INFO] [stderr]     |                                                                                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:693:140
[INFO] [stderr]     |
[INFO] [stderr] 693 |   fn zrangebylex<K: Into<RedisKey>, M: Into<String>, N: Into<String>>(&self, key: K, min: M, max: N, limit: Option<(usize, usize)>) -> Box<Future<Item=Vec<RedisValue>, Error=RedisError>> {
[INFO] [stderr]     |                                                                                                                                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:700:131
[INFO] [stderr]     |
[INFO] [stderr] 700 |   fn zrangebyscore<K: Into<RedisKey>>(&self, key: K, min: f64, max: f64, with_scores: bool, limit: Option<(usize, usize)>) -> Box<Future<Item=Vec<RedisValue>, Error=RedisError>> {
[INFO] [stderr]     |                                                                                                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:707:77
[INFO] [stderr]     |
[INFO] [stderr] 707 |   fn zpopmax<K: Into<RedisKey>>(&self, key: K, count: Option<usize>) -> Box<Future<Item=Vec<RedisValue>, Error=RedisError>> {
[INFO] [stderr]     |                                                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:714:77
[INFO] [stderr]     |
[INFO] [stderr] 714 |   fn zpopmin<K: Into<RedisKey>>(&self, key: K, count: Option<usize>) -> Box<Future<Item=Vec<RedisValue>, Error=RedisError>> {
[INFO] [stderr]     |                                                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:721:84
[INFO] [stderr]     |
[INFO] [stderr] 721 |   fn zrank<K: Into<RedisKey>, V: Into<RedisValue>>(&self, key: K, value: V) -> Box<Future<Item=RedisValue, Error=RedisError>> {
[INFO] [stderr]     |                                                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=RedisValue, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:728:88
[INFO] [stderr]     |
[INFO] [stderr] 728 |   fn zrem<K: Into<RedisKey>, V: Into<MultipleValues>>(&self, key: K, values: V) -> Box<Future<Item=usize, Error=RedisError>> {
[INFO] [stderr]     |                                                                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:735:112
[INFO] [stderr]     |
[INFO] [stderr] 735 |   fn zremrangebylex<K: Into<RedisKey>, M: Into<String>, N: Into<String>>(&self, key: K, min: M, max: N) -> Box<Future<Item=usize, Error=RedisError>> {
[INFO] [stderr]     |                                                                                                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:742:86
[INFO] [stderr]     |
[INFO] [stderr] 742 |   fn zremrangebyrank<K: Into<RedisKey>>(&self, key: K, start: i64, stop: i64) -> Box<Future<Item=usize, Error=RedisError>> {
[INFO] [stderr]     |                                                                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:749:84
[INFO] [stderr]     |
[INFO] [stderr] 749 |   fn zremrangebyscore<K: Into<RedisKey>>(&self, key: K, min: f64, max: f64) -> Box<Future<Item=usize, Error=RedisError>> {
[INFO] [stderr]     |                                                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:756:99
[INFO] [stderr]     |
[INFO] [stderr] 756 |   fn zrevrange<K: Into<RedisKey>>(&self, key: K, start: i64, stop: i64, with_scores: bool) -> Box<Future<Item=Vec<RedisValue>, Error=RedisError>> {
[INFO] [stderr]     |                                                                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:763:143
[INFO] [stderr]     |
[INFO] [stderr] 763 |   fn zrevrangebylex<K: Into<RedisKey>, M: Into<String>, N: Into<String>>(&self, key: K, max: M, min: N, limit: Option<(usize, usize)>) -> Box<Future<Item=Vec<RedisValue>, Error=RedisError>> {
[INFO] [stderr]     |                                                                                                                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:770:134
[INFO] [stderr]     |
[INFO] [stderr] 770 |   fn zrevrangebyscore<K: Into<RedisKey>>(&self, key: K, max: f64, min: f64, with_scores: bool, limit: Option<(usize, usize)>) -> Box<Future<Item=Vec<RedisValue>, Error=RedisError>> {
[INFO] [stderr]     |                                                                                                                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<RedisValue>, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:777:87
[INFO] [stderr]     |
[INFO] [stderr] 777 |   fn zrevrank<K: Into<RedisKey>, V: Into<RedisValue>>(&self, key: K, value: V) -> Box<Future<Item=RedisValue, Error=RedisError>> {
[INFO] [stderr]     |                                                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=RedisValue, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:784:85
[INFO] [stderr]     |
[INFO] [stderr] 784 |   fn zscore<K: Into<RedisKey>, V: Into<RedisValue>>(&self, key: K, value: V) -> Box<Future<Item=RedisValue, Error=RedisError>> {
[INFO] [stderr]     |                                                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=RedisValue, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:796:12
[INFO] [stderr]     |
[INFO] [stderr] 796 |     -> Box<Future<Item=usize, Error=RedisError>>
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:809:12
[INFO] [stderr]     |
[INFO] [stderr] 809 |     -> Box<Future<Item=usize, Error=RedisError>>
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=usize, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:817:51
[INFO] [stderr]     |
[INFO] [stderr] 817 |   fn ttl<K: Into<RedisKey>>(&self, key: K) -> Box<Future<Item=i64, Error=RedisError>> {
[INFO] [stderr]     |                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=i64, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/borrowed.rs:824:52
[INFO] [stderr]     |
[INFO] [stderr] 824 |   fn pttl<K: Into<RedisKey>>(&self, key: K) -> Box<Future<Item=i64, Error=RedisError>> {
[INFO] [stderr]     |                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=i64, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/owned.rs:29:50
[INFO] [stderr]    |
[INFO] [stderr] 29 |         F: FnOnce(&Arc<RedisClientInner>) -> Box<Future<Item=T, Error=RedisError>>
[INFO] [stderr]    |                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=T, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/owned.rs:27:65
[INFO] [stderr]    |
[INFO] [stderr] 27 | fn run_borrowed_empty<T, F>(_self: RedisClient, func: F) -> Box<Future<Item=RedisClient, Error=RedisError>>
[INFO] [stderr]    |                                                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=RedisClient, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/owned.rs:36:50
[INFO] [stderr]    |
[INFO] [stderr] 36 |         F: FnOnce(&Arc<RedisClientInner>) -> Box<Future<Item=T, Error=RedisError>>
[INFO] [stderr]    |                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=T, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/owned.rs:34:59
[INFO] [stderr]    |
[INFO] [stderr] 34 | fn run_borrowed<T, F>(_self: RedisClient, func: F) -> Box<Future<Item=(RedisClient, T), Error=RedisError>>
[INFO] [stderr]    |                                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(RedisClient, T), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/owned.rs:43:24
[INFO] [stderr]    |
[INFO] [stderr] 43 |   fn quit(self) -> Box<Future<Item=Self, Error=RedisError>>;
[INFO] [stderr]    |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Self, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/owned.rs:45:42
[INFO] [stderr]    |
[INFO] [stderr] 45 |   fn flushall(self, _async: bool) -> Box<Future<Item=(Self, String), Error=RedisError>>;
[INFO] [stderr]    |                                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, String), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/owned.rs:47:50
[INFO] [stderr]    |
[INFO] [stderr] 47 |   fn get<K: Into<RedisKey>>(self, key: K) -> Box<Future<Item=(Self, Option<RedisValue>), Error=RedisError>>;
[INFO] [stderr]    |                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, Option<RedisValue>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/owned.rs:49:138
[INFO] [stderr]    |
[INFO] [stderr] 49 |   fn set<K: Into<RedisKey>, V: Into<RedisValue>>(self, key: K, value: V, expire: Option<Expiration>, options: Option<SetOptions>) -> Box<Future<Item=(Self, bool), Error=RedisError>>;
[INFO] [stderr]    |                                                                                                                                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, bool), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/owned.rs:51:34
[INFO] [stderr]    |
[INFO] [stderr] 51 |   fn select(self, db: u8) -> Box<Future<Item=Self, Error=RedisError>>;
[INFO] [stderr]    |                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Self, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/owned.rs:53:51
[INFO] [stderr]    |
[INFO] [stderr] 53 |   fn info(self, section: Option<InfoKind>) -> Box<Future<Item=(Self, String), Error=RedisError>>;
[INFO] [stderr]    |                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, String), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/owned.rs:55:55
[INFO] [stderr]    |
[INFO] [stderr] 55 |   fn del<K: Into<MultipleKeys>>(self, keys: K) -> Box<Future<Item=(Self, usize), Error=RedisError>>;
[INFO] [stderr]    |                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, usize), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/owned.rs:57:58
[INFO] [stderr]    |
[INFO] [stderr] 57 |   fn subscribe<T: Into<String>>(self, channel: T) -> Box<Future<Item=(Self, usize), Error=RedisError>>;
[INFO] [stderr]    |                                                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, usize), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/owned.rs:59:60
[INFO] [stderr]    |
[INFO] [stderr] 59 |   fn unsubscribe<T: Into<String>>(self, channel: T) -> Box<Future<Item=(Self, usize), Error=RedisError>>;
[INFO] [stderr]    |                                                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, usize), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/owned.rs:61:89
[INFO] [stderr]    |
[INFO] [stderr] 61 |   fn publish<T: Into<String>, V: Into<RedisValue>>(self, channel: T, message: V) -> Box<Future<Item=(Self, i64), Error=RedisError>>;
[INFO] [stderr]    |                                                                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, i64), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/owned.rs:63:51
[INFO] [stderr]    |
[INFO] [stderr] 63 |   fn decr<K: Into<RedisKey>>(self, key: K) -> Box<Future<Item=(Self, i64), Error=RedisError>>;
[INFO] [stderr]    |                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, i64), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/owned.rs:65:84
[INFO] [stderr]    |
[INFO] [stderr] 65 |   fn decrby<K: Into<RedisKey>, V: Into<RedisValue>>(self, key: K, value: V) -> Box<Future<Item=(Self, i64), Error=RedisError>>;
[INFO] [stderr]    |                                                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, i64), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/owned.rs:67:52
[INFO] [stderr]    |
[INFO] [stderr] 67 |   fn incr<K: Into<RedisKey>> (self, key: K) -> Box<Future<Item=(Self, i64), Error=RedisError>>;
[INFO] [stderr]    |                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, i64), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/owned.rs:69:64
[INFO] [stderr]    |
[INFO] [stderr] 69 |   fn incrby<K: Into<RedisKey>>(self, key: K, incr: i64) -> Box<Future<Item=(Self, i64), Error=RedisError>>;
[INFO] [stderr]    |                                                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, i64), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/owned.rs:71:69
[INFO] [stderr]    |
[INFO] [stderr] 71 |   fn incrbyfloat<K: Into<RedisKey>>(self, key: K, incr: f64) -> Box<Future<Item=(Self, f64), Error=RedisError>>;
[INFO] [stderr]    |                                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, f64), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/owned.rs:73:24
[INFO] [stderr]    |
[INFO] [stderr] 73 |   fn ping(self) -> Box<Future<Item=(Self, String), Error=RedisError>>;
[INFO] [stderr]    |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, String), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/owned.rs:75:51
[INFO] [stderr]    |
[INFO] [stderr] 75 |   fn auth<V: Into<String>>(self, value: V) -> Box<Future<Item=(Self, String), Error=RedisError>>;
[INFO] [stderr]    |                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, String), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/owned.rs:77:32
[INFO] [stderr]    |
[INFO] [stderr] 77 |   fn bgrewriteaof(self) -> Box<Future<Item=(Self, String), Error=RedisError>>;
[INFO] [stderr]    |                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, String), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/owned.rs:79:26
[INFO] [stderr]    |
[INFO] [stderr] 79 |   fn bgsave(self) -> Box<Future<Item=(Self, String), Error=RedisError>>;
[INFO] [stderr]    |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, String), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/owned.rs:81:31
[INFO] [stderr]    |
[INFO] [stderr] 81 |   fn client_list(self) -> Box<Future<Item=(Self, String), Error=RedisError>>;
[INFO] [stderr]    |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, String), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/owned.rs:83:34
[INFO] [stderr]    |
[INFO] [stderr] 83 |   fn client_getname(self) -> Box<Future<Item=(Self, Option<String>), Error=RedisError>>;
[INFO] [stderr]    |                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, Option<String>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/owned.rs:85:60
[INFO] [stderr]    |
[INFO] [stderr] 85 |   fn client_setname<V: Into<String>>(self, name: V) -> Box<Future<Item=(Self, Option<String>), Error=RedisError>>;
[INFO] [stderr]    |                                                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, Option<String>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/owned.rs:87:26
[INFO] [stderr]    |
[INFO] [stderr] 87 |   fn dbsize(self) -> Box<Future<Item=(Self, usize), Error=RedisError>>;
[INFO] [stderr]    |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, usize), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/owned.rs:89:51
[INFO] [stderr]    |
[INFO] [stderr] 89 |   fn dump<K: Into<RedisKey>>(self, key: K) -> Box<Future<Item=(Self, Option<String>), Error=RedisError>>;
[INFO] [stderr]    |                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, Option<String>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/owned.rs:91:58
[INFO] [stderr]    |
[INFO] [stderr] 91 |   fn exists<K: Into<MultipleKeys>>(self, keys: K) -> Box<Future<Item=(Self, usize), Error=RedisError>>;
[INFO] [stderr]    |                                                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, usize), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/owned.rs:93:67
[INFO] [stderr]    |
[INFO] [stderr] 93 |   fn expire<K: Into<RedisKey>>(self, key: K, seconds: i64) -> Box<Future<Item=(Self, bool), Error=RedisError>>;
[INFO] [stderr]    |                                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, bool), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/owned.rs:95:72
[INFO] [stderr]    |
[INFO] [stderr] 95 |   fn expire_at<K: Into<RedisKey>>(self, key: K, timestamp: i64) -> Box<Future<Item=(Self, bool), Error=RedisError>>;
[INFO] [stderr]    |                                                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, bool), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/owned.rs:97:54
[INFO] [stderr]    |
[INFO] [stderr] 97 |   fn persist<K: Into<RedisKey>>(self, key: K) -> Box<Future<Item=(Self, bool), Error=RedisError>>;
[INFO] [stderr]    |                                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, bool), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/owned.rs:99:41
[INFO] [stderr]    |
[INFO] [stderr] 99 |   fn flushdb(self, _async: bool) -> Box<Future<Item=(Self, String), Error=RedisError>>;
[INFO] [stderr]    |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, String), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:101:81
[INFO] [stderr]     |
[INFO] [stderr] 101 |   fn getrange<K: Into<RedisKey>>(self, key: K, start: usize, end: usize) -> Box<Future<Item=(Self, String), Error=RedisError>>;
[INFO] [stderr]     |                                                                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, String), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:103:84
[INFO] [stderr]     |
[INFO] [stderr] 103 |   fn getset<V: Into<RedisValue>, K: Into<RedisKey>>(self, key: K, value: V) -> Box<Future<Item=(Self, Option<RedisValue>), Error=RedisError>>;
[INFO] [stderr]     |                                                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, Option<RedisValue>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:105:85
[INFO] [stderr]     |
[INFO] [stderr] 105 |   fn hdel<F: Into<MultipleKeys>, K: Into<RedisKey>>(self, key: K, fields: F) -> Box<Future<Item=(Self, usize), Error=RedisError>>;
[INFO] [stderr]     |                                                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, usize), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:107:83
[INFO] [stderr]     |
[INFO] [stderr] 107 |   fn hexists<F: Into<RedisKey>, K: Into<RedisKey>>(self, key: K, field: F) -> Box<Future<Item=(Self, bool), Error=RedisError>>;
[INFO] [stderr]     |                                                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, bool), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:109:80
[INFO] [stderr]     |
[INFO] [stderr] 109 |   fn hget<F: Into<RedisKey>, K: Into<RedisKey>>(self, key: K, field: F) -> Box<Future<Item=(Self, Option<RedisValue>), Error=RedisError>>;
[INFO] [stderr]     |                                                                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, Option<RedisValue>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:111:54
[INFO] [stderr]     |
[INFO] [stderr] 111 |   fn hgetall<K: Into<RedisKey>>(self, key: K) -> Box<Future<Item=(Self, HashMap<String, RedisValue>), Error=RedisError>>;
[INFO] [stderr]     |                                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, HashMap<String, RedisValue>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:113:94
[INFO] [stderr]     |
[INFO] [stderr] 113 |   fn hincrby<F: Into<RedisKey>, K: Into<RedisKey>>(self, key: K, field: F, incr: i64) -> Box<Future<Item=(Self, i64), Error=RedisError>>;
[INFO] [stderr]     |                                                                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, i64), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:115:99
[INFO] [stderr]     |
[INFO] [stderr] 115 |   fn hincrbyfloat<K: Into<RedisKey>, F: Into<RedisKey>>(self, key: K, field: F, incr: f64) -> Box<Future<Item=(Self, f64), Error=RedisError>>;
[INFO] [stderr]     |                                                                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, f64), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:117:52
[INFO] [stderr]     |
[INFO] [stderr] 117 |   fn hkeys<K: Into<RedisKey>>(self, key: K) -> Box<Future<Item=(Self, Vec<String>), Error=RedisError>>;
[INFO] [stderr]     |                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, Vec<String>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:119:51
[INFO] [stderr]     |
[INFO] [stderr] 119 |   fn hlen<K: Into<RedisKey>>(self, key: K) -> Box<Future<Item=(Self, usize), Error=RedisError>>;
[INFO] [stderr]     |                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, usize), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:121:86
[INFO] [stderr]     |
[INFO] [stderr] 121 |   fn hmget<F: Into<MultipleKeys>, K: Into<RedisKey>>(self, key: K, fields: F) -> Box<Future<Item=(Self, Vec<RedisValue>), Error=RedisError>>;
[INFO] [stderr]     |                                                                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, Vec<RedisValue>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:123:127
[INFO] [stderr]     |
[INFO] [stderr] 123 |   fn hmset<V: Into<RedisValue>, F: Into<RedisKey> + Hash + Eq, K: Into<RedisKey>>(self, key: K, values: HashMap<F, V>) -> Box<Future<Item=(Self, String), Error=RedisError>>;
[INFO] [stderr]     |                                                                                                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, String), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:125:111
[INFO] [stderr]     |
[INFO] [stderr] 125 |   fn hset<K: Into<RedisKey>, F: Into<RedisKey>, V: Into<RedisValue>>(self, key: K, field: F, value: V) -> Box<Future<Item=(Self, usize), Error=RedisError>>;
[INFO] [stderr]     |                                                                                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, usize), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:127:113
[INFO] [stderr]     |
[INFO] [stderr] 127 |   fn hsetnx<K: Into<RedisKey>, F: Into<RedisKey>, V: Into<RedisValue>>(self, key: K, field: F, value: V) -> Box<Future<Item=(Self, usize), Error=RedisError>>;
[INFO] [stderr]     |                                                                                                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, usize), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:129:83
[INFO] [stderr]     |
[INFO] [stderr] 129 |   fn hstrlen<K: Into<RedisKey>, F: Into<RedisKey>>(self, key: K, field: F) -> Box<Future<Item=(Self, usize), Error=RedisError>>;
[INFO] [stderr]     |                                                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, usize), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:131:52
[INFO] [stderr]     |
[INFO] [stderr] 131 |   fn hvals<K: Into<RedisKey>>(self, key: K) -> Box<Future<Item=(Self, Vec<RedisValue>), Error=RedisError>>;
[INFO] [stderr]     |                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, Vec<RedisValue>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:133:51
[INFO] [stderr]     |
[INFO] [stderr] 133 |   fn llen<K: Into<RedisKey>>(self, key: K) -> Box<Future<Item=(Self, usize), Error=RedisError>>;
[INFO] [stderr]     |                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, usize), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:135:83
[INFO] [stderr]     |
[INFO] [stderr] 135 |   fn lpush<K: Into<RedisKey>, V: Into<RedisValue>>(self, key: K, value: V) -> Box<Future<Item=(Self, usize), Error=RedisError>>;
[INFO] [stderr]     |                                                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, usize), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:137:51
[INFO] [stderr]     |
[INFO] [stderr] 137 |   fn lpop<K: Into<RedisKey>>(self, key: K) -> Box<Future<Item=(Self, Option<RedisValue>), Error=RedisError>>;
[INFO] [stderr]     |                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, Option<RedisValue>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:139:87
[INFO] [stderr]     |
[INFO] [stderr] 139 |   fn sadd<K: Into<RedisKey>, V: Into<MultipleValues>>(self, key: K, values: V) -> Box<Future<Item=(Self, usize), Error=RedisError>>;
[INFO] [stderr]     |                                                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, usize), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:141:87
[INFO] [stderr]     |
[INFO] [stderr] 141 |   fn srem<K: Into<RedisKey>, V: Into<MultipleValues>>(self, key: K, values: V) -> Box<Future<Item=(Self, usize), Error=RedisError>>;
[INFO] [stderr]     |                                                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, usize), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:143:55
[INFO] [stderr]     |
[INFO] [stderr] 143 |   fn smembers<K: Into<RedisKey>>(self, key: K) -> Box<Future<Item=(Self, Vec<RedisValue>), Error=RedisError>>;
[INFO] [stderr]     |                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, Vec<RedisValue>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:145:66
[INFO] [stderr]     |
[INFO] [stderr] 145 |   fn psubscribe<K: Into<MultipleKeys>>(self, patterns: K) -> Box<Future<Item=(Self, Vec<usize>), Error=RedisError>>;
[INFO] [stderr]     |                                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, Vec<usize>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:147:68
[INFO] [stderr]     |
[INFO] [stderr] 147 |   fn punsubscribe<K: Into<MultipleKeys>>(self, patterns: K) -> Box<Future<Item=(Self, Vec<usize>), Error=RedisError>>;
[INFO] [stderr]     |                                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, Vec<usize>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:149:56
[INFO] [stderr]     |
[INFO] [stderr] 149 |   fn mget<K: Into<MultipleKeys>>(self, keys: K) -> Box<Future<Item=(Self, Vec<RedisValue>), Error=RedisError>>;
[INFO] [stderr]     |                                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, Vec<RedisValue>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:151:147
[INFO] [stderr]     |
[INFO] [stderr] 151 |   fn zadd<K: Into<RedisKey>, V: Into<MultipleZaddValues>>(self, key: K, options: Option<SetOptions>, changed: bool, incr: bool, values: V) -> Box<Future<Item=(Self, RedisValue), Error=RedisError>>;
[INFO] [stderr]     |                                                                                                                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, RedisValue), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:153:52
[INFO] [stderr]     |
[INFO] [stderr] 153 |   fn zcard<K: Into<RedisKey>>(self, key: K) -> Box<Future<Item=(Self, usize), Error=RedisError>>;
[INFO] [stderr]     |                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, usize), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:155:73
[INFO] [stderr]     |
[INFO] [stderr] 155 |   fn zcount<K: Into<RedisKey>>(self, key: K, min: f64, max: f64) -> Box<Future<Item=(Self, usize), Error=RedisError>>;
[INFO] [stderr]     |                                                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, usize), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:157:106
[INFO] [stderr]     |
[INFO] [stderr] 157 |   fn zlexcount<K: Into<RedisKey>, M: Into<String>, N: Into<String>>(self, key: K, min: M, max: N) -> Box<Future<Item=(Self, usize), Error=RedisError>>;
[INFO] [stderr]     |                                                                                                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, usize), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:159:96
[INFO] [stderr]     |
[INFO] [stderr] 159 |   fn zincrby<K: Into<RedisKey>, V: Into<RedisValue>>(self, key: K, incr: f64, value: V) -> Box<Future<Item=(Self, f64), Error=RedisError>>;
[INFO] [stderr]     |                                                                                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, f64), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:161:95
[INFO] [stderr]     |
[INFO] [stderr] 161 |   fn zrange<K: Into<RedisKey>>(self, key: K, start: i64, stop: i64, with_scores: bool) -> Box<Future<Item=(Self, Vec<RedisValue>), Error=RedisError>>;
[INFO] [stderr]     |                                                                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, Vec<RedisValue>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:163:139
[INFO] [stderr]     |
[INFO] [stderr] 163 |   fn zrangebylex<K: Into<RedisKey>, M: Into<String>, N: Into<String>>(self, key: K, min: M, max: N, limit: Option<(usize, usize)>) -> Box<Future<Item=(Self, Vec<RedisValue>), Error=RedisError>>;
[INFO] [stderr]     |                                                                                                                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, Vec<RedisValue>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:165:130
[INFO] [stderr]     |
[INFO] [stderr] 165 |   fn zrangebyscore<K: Into<RedisKey>>(self, key: K, min: f64, max: f64, with_scores: bool, limit: Option<(usize, usize)>) -> Box<Future<Item=(Self, Vec<RedisValue>), Error=RedisError>>;
[INFO] [stderr]     |                                                                                                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, Vec<RedisValue>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:167:76
[INFO] [stderr]     |
[INFO] [stderr] 167 |   fn zpopmax<K: Into<RedisKey>>(self, key: K, count: Option<usize>) -> Box<Future<Item=(Self, Vec<RedisValue>), Error=RedisError>>;
[INFO] [stderr]     |                                                                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, Vec<RedisValue>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:169:76
[INFO] [stderr]     |
[INFO] [stderr] 169 |   fn zpopmin<K: Into<RedisKey>>(self, key: K, count: Option<usize>) -> Box<Future<Item=(Self, Vec<RedisValue>), Error=RedisError>>;
[INFO] [stderr]     |                                                                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, Vec<RedisValue>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:171:83
[INFO] [stderr]     |
[INFO] [stderr] 171 |   fn zrank<K: Into<RedisKey>, V: Into<RedisValue>>(self, key: K, value: V) -> Box<Future<Item=(Self, RedisValue), Error=RedisError>>;
[INFO] [stderr]     |                                                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, RedisValue), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:173:87
[INFO] [stderr]     |
[INFO] [stderr] 173 |   fn zrem<K: Into<RedisKey>, V: Into<MultipleValues>>(self, key: K, values: V) -> Box<Future<Item=(Self, usize), Error=RedisError>>;
[INFO] [stderr]     |                                                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, usize), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:175:111
[INFO] [stderr]     |
[INFO] [stderr] 175 |   fn zremrangebylex<K: Into<RedisKey>, M: Into<String>, N: Into<String>>(self, key: K, min: M, max: N) -> Box<Future<Item=(Self, usize), Error=RedisError>>;
[INFO] [stderr]     |                                                                                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, usize), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:177:85
[INFO] [stderr]     |
[INFO] [stderr] 177 |   fn zremrangebyrank<K: Into<RedisKey>>(self, key: K, start: i64, stop: i64) -> Box<Future<Item=(Self, usize), Error=RedisError>>;
[INFO] [stderr]     |                                                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, usize), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:179:83
[INFO] [stderr]     |
[INFO] [stderr] 179 |   fn zremrangebyscore<K: Into<RedisKey>>(self, key: K, min: f64, max: f64) -> Box<Future<Item=(Self, usize), Error=RedisError>>;
[INFO] [stderr]     |                                                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, usize), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:181:98
[INFO] [stderr]     |
[INFO] [stderr] 181 |   fn zrevrange<K: Into<RedisKey>>(self, key: K, start: i64, stop: i64, with_scores: bool) -> Box<Future<Item=(Self, Vec<RedisValue>), Error=RedisError>>;
[INFO] [stderr]     |                                                                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, Vec<RedisValue>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:183:142
[INFO] [stderr]     |
[INFO] [stderr] 183 |   fn zrevrangebylex<K: Into<RedisKey>, M: Into<String>, N: Into<String>>(self, key: K, max: M, min: N, limit: Option<(usize, usize)>) -> Box<Future<Item=(Self, Vec<RedisValue>), Error=RedisError>>;
[INFO] [stderr]     |                                                                                                                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, Vec<RedisValue>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:185:133
[INFO] [stderr]     |
[INFO] [stderr] 185 |   fn zrevrangebyscore<K: Into<RedisKey>>(self, key: K, max: f64, min: f64, with_scores: bool, limit: Option<(usize, usize)>) -> Box<Future<Item=(Self, Vec<RedisValue>), Error=RedisError>>;
[INFO] [stderr]     |                                                                                                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, Vec<RedisValue>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:187:86
[INFO] [stderr]     |
[INFO] [stderr] 187 |   fn zrevrank<K: Into<RedisKey>, V: Into<RedisValue>>(self, key: K, value: V) -> Box<Future<Item=(Self, RedisValue), Error=RedisError>>;
[INFO] [stderr]     |                                                                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, RedisValue), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:189:84
[INFO] [stderr]     |
[INFO] [stderr] 189 |   fn zscore<K: Into<RedisKey>, V: Into<RedisValue>>(self, key: K, value: V) -> Box<Future<Item=(Self, RedisValue), Error=RedisError>>;
[INFO] [stderr]     |                                                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, RedisValue), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:196:12
[INFO] [stderr]     |
[INFO] [stderr] 196 |     -> Box<Future<Item=(Self, usize), Error=RedisError>>;
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, usize), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:203:12
[INFO] [stderr]     |
[INFO] [stderr] 203 |     -> Box<Future<Item=(Self, usize), Error=RedisError>>;
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, usize), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:205:50
[INFO] [stderr]     |
[INFO] [stderr] 205 |   fn ttl<K: Into<RedisKey>>(self, key: K) -> Box<Future<Item=(Self, i64), Error=RedisError>>;
[INFO] [stderr]     |                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, i64), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:207:51
[INFO] [stderr]     |
[INFO] [stderr] 207 |   fn pttl<K: Into<RedisKey>>(self, key: K) -> Box<Future<Item=(Self, i64), Error=RedisError>>;
[INFO] [stderr]     |                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, i64), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:216:50
[INFO] [stderr]     |
[INFO] [stderr] 216 |   fn get<K: Into<RedisKey>>(self, key: K) -> Box<Future<Item=(Self, Option<RedisValue>), Error=RedisError>> {
[INFO] [stderr]     |                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, Option<RedisValue>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:230:24
[INFO] [stderr]     |
[INFO] [stderr] 230 |   fn quit(self) -> Box<Future<Item=Self, Error=RedisError>> {
[INFO] [stderr]     |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Self, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:238:42
[INFO] [stderr]     |
[INFO] [stderr] 238 |   fn flushall(self, _async: bool) -> Box<Future<Item=(Self, String), Error=RedisError>> {
[INFO] [stderr]     |                                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, String), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:246:138
[INFO] [stderr]     |
[INFO] [stderr] 246 |   fn set<K: Into<RedisKey>, V: Into<RedisValue>>(self, key: K, value: V, expire: Option<Expiration>, options: Option<SetOptions>) -> Box<Future<Item=(Self, bool), Error=RedisError>> {
[INFO] [stderr]     |                                                                                                                                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, bool), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:253:34
[INFO] [stderr]     |
[INFO] [stderr] 253 |   fn select(self, db: u8) -> Box<Future<Item=Self, Error=RedisError>> {
[INFO] [stderr]     |                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Self, Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:260:51
[INFO] [stderr]     |
[INFO] [stderr] 260 |   fn info(self, section: Option<InfoKind>) -> Box<Future<Item=(Self, String), Error=RedisError>> {
[INFO] [stderr]     |                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, String), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:268:55
[INFO] [stderr]     |
[INFO] [stderr] 268 |   fn del<K: Into<MultipleKeys>>(self, keys: K) -> Box<Future<Item=(Self, usize), Error=RedisError>> {
[INFO] [stderr]     |                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, usize), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:277:58
[INFO] [stderr]     |
[INFO] [stderr] 277 |   fn subscribe<T: Into<String>>(self, channel: T) -> Box<Future<Item=(Self, usize), Error=RedisError>> {
[INFO] [stderr]     |                                                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, usize), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:284:60
[INFO] [stderr]     |
[INFO] [stderr] 284 |   fn unsubscribe<T: Into<String>>(self, channel: T) -> Box<Future<Item=(Self, usize), Error=RedisError>> {
[INFO] [stderr]     |                                                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, usize), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:291:89
[INFO] [stderr]     |
[INFO] [stderr] 291 |   fn publish<T: Into<String>, V: Into<RedisValue>>(self, channel: T, message: V) -> Box<Future<Item=(Self, i64), Error=RedisError>> {
[INFO] [stderr]     |                                                                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, i64), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:299:51
[INFO] [stderr]     |
[INFO] [stderr] 299 |   fn decr<K: Into<RedisKey>>(self, key: K) -> Box<Future<Item=(Self, i64), Error=RedisError>> {
[INFO] [stderr]     |                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, i64), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:307:84
[INFO] [stderr]     |
[INFO] [stderr] 307 |   fn decrby<K: Into<RedisKey>, V: Into<RedisValue>>(self, key: K, value: V) -> Box<Future<Item=(Self, i64), Error=RedisError>> {
[INFO] [stderr]     |                                                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, i64), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:315:52
[INFO] [stderr]     |
[INFO] [stderr] 315 |   fn incr<K: Into<RedisKey>> (self, key: K) -> Box<Future<Item=(Self, i64), Error=RedisError>> {
[INFO] [stderr]     |                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, i64), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:323:64
[INFO] [stderr]     |
[INFO] [stderr] 323 |   fn incrby<K: Into<RedisKey>>(self, key: K, incr: i64) -> Box<Future<Item=(Self, i64), Error=RedisError>> {
[INFO] [stderr]     |                                                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, i64), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:331:69
[INFO] [stderr]     |
[INFO] [stderr] 331 |   fn incrbyfloat<K: Into<RedisKey>>(self, key: K, incr: f64) -> Box<Future<Item=(Self, f64), Error=RedisError>> {
[INFO] [stderr]     |                                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, f64), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:338:24
[INFO] [stderr]     |
[INFO] [stderr] 338 |   fn ping(self) -> Box<Future<Item=(Self, String), Error=RedisError>> {
[INFO] [stderr]     |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, String), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:345:51
[INFO] [stderr]     |
[INFO] [stderr] 345 |   fn auth<V: Into<String>>(self, value: V) -> Box<Future<Item=(Self, String), Error=RedisError>> {
[INFO] [stderr]     |                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, String), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:352:32
[INFO] [stderr]     |
[INFO] [stderr] 352 |   fn bgrewriteaof(self) -> Box<Future<Item=(Self, String), Error=RedisError>> {
[INFO] [stderr]     |                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, String), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:359:26
[INFO] [stderr]     |
[INFO] [stderr] 359 |   fn bgsave(self) -> Box<Future<Item=(Self, String), Error=RedisError>> {
[INFO] [stderr]     |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, String), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:366:31
[INFO] [stderr]     |
[INFO] [stderr] 366 |   fn client_list(self) -> Box<Future<Item=(Self, String), Error=RedisError>> {
[INFO] [stderr]     |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, String), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:373:34
[INFO] [stderr]     |
[INFO] [stderr] 373 |   fn client_getname(self) -> Box<Future<Item=(Self, Option<String>), Error=RedisError>> {
[INFO] [stderr]     |                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, Option<String>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:380:60
[INFO] [stderr]     |
[INFO] [stderr] 380 |   fn client_setname<V: Into<String>>(self, name: V) -> Box<Future<Item=(Self, Option<String>), Error=RedisError>> {
[INFO] [stderr]     |                                                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, Option<String>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:387:26
[INFO] [stderr]     |
[INFO] [stderr] 387 |   fn dbsize(self) -> Box<Future<Item=(Self, usize), Error=RedisError>> {
[INFO] [stderr]     |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, usize), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:395:51
[INFO] [stderr]     |
[INFO] [stderr] 395 |   fn dump<K: Into<RedisKey>>(self, key: K) -> Box<Future<Item=(Self, Option<String>), Error=RedisError>> {
[INFO] [stderr]     |                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, Option<String>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:402:58
[INFO] [stderr]     |
[INFO] [stderr] 402 |   fn exists<K: Into<MultipleKeys>>(self, keys: K) -> Box<Future<Item=(Self, usize), Error=RedisError>> {
[INFO] [stderr]     |                                                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, usize), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:410:67
[INFO] [stderr]     |
[INFO] [stderr] 410 |   fn expire<K: Into<RedisKey>>(self, key: K, seconds: i64) -> Box<Future<Item=(Self, bool), Error=RedisError>> {
[INFO] [stderr]     |                                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, bool), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:418:72
[INFO] [stderr]     |
[INFO] [stderr] 418 |   fn expire_at<K: Into<RedisKey>>(self, key: K, timestamp: i64) -> Box<Future<Item=(Self, bool), Error=RedisError>> {
[INFO] [stderr]     |                                                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, bool), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:427:54
[INFO] [stderr]     |
[INFO] [stderr] 427 |   fn persist<K: Into<RedisKey>>(self, key: K) -> Box<Future<Item=(Self, bool), Error=RedisError>> {
[INFO] [stderr]     |                                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, bool), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:435:41
[INFO] [stderr]     |
[INFO] [stderr] 435 |   fn flushdb(self, _async: bool) -> Box<Future<Item=(Self, String), Error=RedisError>> {
[INFO] [stderr]     |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, String), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:443:81
[INFO] [stderr]     |
[INFO] [stderr] 443 |   fn getrange<K: Into<RedisKey>>(self, key: K, start: usize, end: usize) -> Box<Future<Item=(Self, String), Error=RedisError>> {
[INFO] [stderr]     |                                                                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, String), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:451:84
[INFO] [stderr]     |
[INFO] [stderr] 451 |   fn getset<V: Into<RedisValue>, K: Into<RedisKey>>(self, key: K, value: V) -> Box<Future<Item=(Self, Option<RedisValue>), Error=RedisError>> {
[INFO] [stderr]     |                                                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, Option<RedisValue>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:459:85
[INFO] [stderr]     |
[INFO] [stderr] 459 |   fn hdel<F: Into<MultipleKeys>, K: Into<RedisKey>>(self, key: K, fields: F) -> Box<Future<Item=(Self, usize), Error=RedisError>> {
[INFO] [stderr]     |                                                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, usize), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:466:83
[INFO] [stderr]     |
[INFO] [stderr] 466 |   fn hexists<F: Into<RedisKey>, K: Into<RedisKey>>(self, key: K, field: F) -> Box<Future<Item=(Self, bool), Error=RedisError>> {
[INFO] [stderr]     |                                                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, bool), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:473:80
[INFO] [stderr]     |
[INFO] [stderr] 473 |   fn hget<F: Into<RedisKey>, K: Into<RedisKey>>(self, key: K, field: F) -> Box<Future<Item=(Self, Option<RedisValue>), Error=RedisError>> {
[INFO] [stderr]     |                                                                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, Option<RedisValue>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:481:54
[INFO] [stderr]     |
[INFO] [stderr] 481 |   fn hgetall<K: Into<RedisKey>>(self, key: K) -> Box<Future<Item=(Self, HashMap<String, RedisValue>), Error=RedisError>> {
[INFO] [stderr]     |                                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, HashMap<String, RedisValue>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:489:94
[INFO] [stderr]     |
[INFO] [stderr] 489 |   fn hincrby<F: Into<RedisKey>, K: Into<RedisKey>>(self, key: K, field: F, incr: i64) -> Box<Future<Item=(Self, i64), Error=RedisError>> {
[INFO] [stderr]     |                                                                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, i64), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:498:99
[INFO] [stderr]     |
[INFO] [stderr] 498 |   fn hincrbyfloat<K: Into<RedisKey>, F: Into<RedisKey>>(self, key: K, field: F, incr: f64) -> Box<Future<Item=(Self, f64), Error=RedisError>> {
[INFO] [stderr]     |                                                                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, f64), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:507:52
[INFO] [stderr]     |
[INFO] [stderr] 507 |   fn hkeys<K: Into<RedisKey>>(self, key: K) -> Box<Future<Item=(Self, Vec<String>), Error=RedisError>> {
[INFO] [stderr]     |                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, Vec<String>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:514:51
[INFO] [stderr]     |
[INFO] [stderr] 514 |   fn hlen<K: Into<RedisKey>>(self, key: K) -> Box<Future<Item=(Self, usize), Error=RedisError>> {
[INFO] [stderr]     |                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, usize), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:522:86
[INFO] [stderr]     |
[INFO] [stderr] 522 |   fn hmget<F: Into<MultipleKeys>, K: Into<RedisKey>>(self, key: K, fields: F) -> Box<Future<Item=(Self, Vec<RedisValue>), Error=RedisError>> {
[INFO] [stderr]     |                                                                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, Vec<RedisValue>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:530:131
[INFO] [stderr]     |
[INFO] [stderr] 530 |   fn hmset<V: Into<RedisValue>, F: Into<RedisKey> + Hash + Eq, K: Into<RedisKey>>(self, key: K, mut values: HashMap<F, V>) -> Box<Future<Item=(Self, String), Error=RedisError>> {
[INFO] [stderr]     |                                                                                                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, String), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:539:111
[INFO] [stderr]     |
[INFO] [stderr] 539 |   fn hset<K: Into<RedisKey>, F: Into<RedisKey>, V: Into<RedisValue>>(self, key: K, field: F, value: V) -> Box<Future<Item=(Self, usize), Error=RedisError>> {
[INFO] [stderr]     |                                                                                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, usize), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:548:113
[INFO] [stderr]     |
[INFO] [stderr] 548 |   fn hsetnx<K: Into<RedisKey>, F: Into<RedisKey>, V: Into<RedisValue>>(self, key: K, field: F, value: V) -> Box<Future<Item=(Self, usize), Error=RedisError>> {
[INFO] [stderr]     |                                                                                                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, usize), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:556:83
[INFO] [stderr]     |
[INFO] [stderr] 556 |   fn hstrlen<K: Into<RedisKey>, F: Into<RedisKey>>(self, key: K, field: F) -> Box<Future<Item=(Self, usize), Error=RedisError>> {
[INFO] [stderr]     |                                                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, usize), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:564:52
[INFO] [stderr]     |
[INFO] [stderr] 564 |   fn hvals<K: Into<RedisKey>>(self, key: K) -> Box<Future<Item=(Self, Vec<RedisValue>), Error=RedisError>> {
[INFO] [stderr]     |                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, Vec<RedisValue>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:573:51
[INFO] [stderr]     |
[INFO] [stderr] 573 |   fn llen<K: Into<RedisKey>>(self, key: K) -> Box<Future<Item=(Self, usize), Error=RedisError>> {
[INFO] [stderr]     |                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, usize), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:582:83
[INFO] [stderr]     |
[INFO] [stderr] 582 |   fn lpush<K: Into<RedisKey>, V: Into<RedisValue>>(self, key: K, value: V) -> Box<Future<Item=(Self, usize), Error=RedisError>> {
[INFO] [stderr]     |                                                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, usize), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:589:51
[INFO] [stderr]     |
[INFO] [stderr] 589 |   fn lpop<K: Into<RedisKey>>(self, key: K) -> Box<Future<Item=(Self, Option<RedisValue>), Error=RedisError>> {
[INFO] [stderr]     |                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, Option<RedisValue>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:598:87
[INFO] [stderr]     |
[INFO] [stderr] 598 |   fn sadd<K: Into<RedisKey>, V: Into<MultipleValues>>(self, key: K, values: V) -> Box<Future<Item=(Self, usize), Error=RedisError>> {
[INFO] [stderr]     |                                                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, usize), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:607:87
[INFO] [stderr]     |
[INFO] [stderr] 607 |   fn srem<K: Into<RedisKey>, V: Into<MultipleValues>>(self, key: K, values: V) -> Box<Future<Item=(Self, usize), Error=RedisError>> {
[INFO] [stderr]     |                                                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, usize), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:615:55
[INFO] [stderr]     |
[INFO] [stderr] 615 |   fn smembers<K: Into<RedisKey>>(self, key: K) -> Box<Future<Item=(Self, Vec<RedisValue>), Error=RedisError>> {
[INFO] [stderr]     |                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, Vec<RedisValue>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:624:66
[INFO] [stderr]     |
[INFO] [stderr] 624 |   fn psubscribe<K: Into<MultipleKeys>>(self, patterns: K) -> Box<Future<Item=(Self, Vec<usize>), Error=RedisError>> {
[INFO] [stderr]     |                                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, Vec<usize>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:633:68
[INFO] [stderr]     |
[INFO] [stderr] 633 |   fn punsubscribe<K: Into<MultipleKeys>>(self, patterns: K) -> Box<Future<Item=(Self, Vec<usize>), Error=RedisError>> {
[INFO] [stderr]     |                                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, Vec<usize>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:640:56
[INFO] [stderr]     |
[INFO] [stderr] 640 |   fn mget<K: Into<MultipleKeys>>(self, keys: K) -> Box<Future<Item=(Self, Vec<RedisValue>), Error=RedisError>> {
[INFO] [stderr]     |                                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, Vec<RedisValue>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:647:147
[INFO] [stderr]     |
[INFO] [stderr] 647 |   fn zadd<K: Into<RedisKey>, V: Into<MultipleZaddValues>>(self, key: K, options: Option<SetOptions>, changed: bool, incr: bool, values: V) -> Box<Future<Item=(Self, RedisValue), Error=RedisError>> {
[INFO] [stderr]     |                                                                                                                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, RedisValue), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:654:52
[INFO] [stderr]     |
[INFO] [stderr] 654 |   fn zcard<K: Into<RedisKey>>(self, key: K) -> Box<Future<Item=(Self, usize), Error=RedisError>> {
[INFO] [stderr]     |                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, usize), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:661:73
[INFO] [stderr]     |
[INFO] [stderr] 661 |   fn zcount<K: Into<RedisKey>>(self, key: K, min: f64, max: f64) -> Box<Future<Item=(Self, usize), Error=RedisError>> {
[INFO] [stderr]     |                                                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, usize), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:668:106
[INFO] [stderr]     |
[INFO] [stderr] 668 |   fn zlexcount<K: Into<RedisKey>, M: Into<String>, N: Into<String>>(self, key: K, min: M, max: N) -> Box<Future<Item=(Self, usize), Error=RedisError>> {
[INFO] [stderr]     |                                                                                                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, usize), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:675:96
[INFO] [stderr]     |
[INFO] [stderr] 675 |   fn zincrby<K: Into<RedisKey>, V: Into<RedisValue>>(self, key: K, incr: f64, value: V) -> Box<Future<Item=(Self, f64), Error=RedisError>> {
[INFO] [stderr]     |                                                                                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, f64), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:682:95
[INFO] [stderr]     |
[INFO] [stderr] 682 |   fn zrange<K: Into<RedisKey>>(self, key: K, start: i64, stop: i64, with_scores: bool) -> Box<Future<Item=(Self, Vec<RedisValue>), Error=RedisError>> {
[INFO] [stderr]     |                                                                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, Vec<RedisValue>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:689:139
[INFO] [stderr]     |
[INFO] [stderr] 689 |   fn zrangebylex<K: Into<RedisKey>, M: Into<String>, N: Into<String>>(self, key: K, min: M, max: N, limit: Option<(usize, usize)>) -> Box<Future<Item=(Self, Vec<RedisValue>), Error=RedisError>> {
[INFO] [stderr]     |                                                                                                                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, Vec<RedisValue>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:696:130
[INFO] [stderr]     |
[INFO] [stderr] 696 |   fn zrangebyscore<K: Into<RedisKey>>(self, key: K, min: f64, max: f64, with_scores: bool, limit: Option<(usize, usize)>) -> Box<Future<Item=(Self, Vec<RedisValue>), Error=RedisError>> {
[INFO] [stderr]     |                                                                                                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, Vec<RedisValue>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:703:76
[INFO] [stderr]     |
[INFO] [stderr] 703 |   fn zpopmax<K: Into<RedisKey>>(self, key: K, count: Option<usize>) -> Box<Future<Item=(Self, Vec<RedisValue>), Error=RedisError>> {
[INFO] [stderr]     |                                                                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, Vec<RedisValue>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:710:76
[INFO] [stderr]     |
[INFO] [stderr] 710 |   fn zpopmin<K: Into<RedisKey>>(self, key: K, count: Option<usize>) -> Box<Future<Item=(Self, Vec<RedisValue>), Error=RedisError>> {
[INFO] [stderr]     |                                                                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, Vec<RedisValue>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:717:83
[INFO] [stderr]     |
[INFO] [stderr] 717 |   fn zrank<K: Into<RedisKey>, V: Into<RedisValue>>(self, key: K, value: V) -> Box<Future<Item=(Self, RedisValue), Error=RedisError>> {
[INFO] [stderr]     |                                                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, RedisValue), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:724:87
[INFO] [stderr]     |
[INFO] [stderr] 724 |   fn zrem<K: Into<RedisKey>, V: Into<MultipleValues>>(self, key: K, values: V) -> Box<Future<Item=(Self, usize), Error=RedisError>> {
[INFO] [stderr]     |                                                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, usize), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:731:111
[INFO] [stderr]     |
[INFO] [stderr] 731 |   fn zremrangebylex<K: Into<RedisKey>, M: Into<String>, N: Into<String>>(self, key: K, min: M, max: N) -> Box<Future<Item=(Self, usize), Error=RedisError>> {
[INFO] [stderr]     |                                                                                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, usize), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:738:85
[INFO] [stderr]     |
[INFO] [stderr] 738 |   fn zremrangebyrank<K: Into<RedisKey>>(self, key: K, start: i64, stop: i64) -> Box<Future<Item=(Self, usize), Error=RedisError>> {
[INFO] [stderr]     |                                                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, usize), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:745:83
[INFO] [stderr]     |
[INFO] [stderr] 745 |   fn zremrangebyscore<K: Into<RedisKey>>(self, key: K, min: f64, max: f64) -> Box<Future<Item=(Self, usize), Error=RedisError>> {
[INFO] [stderr]     |                                                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, usize), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:752:98
[INFO] [stderr]     |
[INFO] [stderr] 752 |   fn zrevrange<K: Into<RedisKey>>(self, key: K, start: i64, stop: i64, with_scores: bool) -> Box<Future<Item=(Self, Vec<RedisValue>), Error=RedisError>> {
[INFO] [stderr]     |                                                                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, Vec<RedisValue>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:759:142
[INFO] [stderr]     |
[INFO] [stderr] 759 |   fn zrevrangebylex<K: Into<RedisKey>, M: Into<String>, N: Into<String>>(self, key: K, max: M, min: N, limit: Option<(usize, usize)>) -> Box<Future<Item=(Self, Vec<RedisValue>), Error=RedisError>> {
[INFO] [stderr]     |                                                                                                                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, Vec<RedisValue>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:766:133
[INFO] [stderr]     |
[INFO] [stderr] 766 |   fn zrevrangebyscore<K: Into<RedisKey>>(self, key: K, max: f64, min: f64, with_scores: bool, limit: Option<(usize, usize)>) -> Box<Future<Item=(Self, Vec<RedisValue>), Error=RedisError>> {
[INFO] [stderr]     |                                                                                                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, Vec<RedisValue>), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:773:86
[INFO] [stderr]     |
[INFO] [stderr] 773 |   fn zrevrank<K: Into<RedisKey>, V: Into<RedisValue>>(self, key: K, value: V) -> Box<Future<Item=(Self, RedisValue), Error=RedisError>> {
[INFO] [stderr]     |                                                                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, RedisValue), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:780:84
[INFO] [stderr]     |
[INFO] [stderr] 780 |   fn zscore<K: Into<RedisKey>, V: Into<RedisValue>>(self, key: K, value: V) -> Box<Future<Item=(Self, RedisValue), Error=RedisError>> {
[INFO] [stderr]     |                                                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, RedisValue), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:792:12
[INFO] [stderr]     |
[INFO] [stderr] 792 |     -> Box<Future<Item=(Self, usize), Error=RedisError>>
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, usize), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:805:12
[INFO] [stderr]     |
[INFO] [stderr] 805 |     -> Box<Future<Item=(Self, usize), Error=RedisError>>
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, usize), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:813:50
[INFO] [stderr]     |
[INFO] [stderr] 813 |   fn ttl<K: Into<RedisKey>>(self, key: K) -> Box<Future<Item=(Self, i64), Error=RedisError>> {
[INFO] [stderr]     |                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, i64), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/owned.rs:820:51
[INFO] [stderr]     |
[INFO] [stderr] 820 |   fn pttl<K: Into<RedisKey>>(self, key: K) -> Box<Future<Item=(Self, i64), Error=RedisError>> {
[INFO] [stderr]     |                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(Self, i64), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'tokio_io::codec::Framed': Moved to tokio-codec
[INFO] [stderr]   --> src/multiplexer/types.rs:69:5
[INFO] [stderr]    |
[INFO] [stderr] 69 | use tokio_io::codec::Framed;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(deprecated)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'tokio_io::codec::Framed': Moved to tokio-codec
[INFO] [stderr]   --> src/multiplexer/types.rs:82:39
[INFO] [stderr]    |
[INFO] [stderr] 82 | pub type TlsTransports = Vec<(String, Framed<TcpStream, RedisCodec>)>;
[INFO] [stderr]    |                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'tokio_io::codec::Framed': Moved to tokio-codec
[INFO] [stderr]   --> src/multiplexer/types.rs:84:39
[INFO] [stderr]    |
[INFO] [stderr] 84 | pub type TcpTransports = Vec<(String, Framed<TcpStream, RedisCodec>)>;
[INFO] [stderr]    |                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'tokio_io::codec::Framed': Moved to tokio-codec
[INFO] [stderr]    --> src/multiplexer/types.rs:126:17
[INFO] [stderr]     |
[INFO] [stderr] 126 |   Tls(SplitSink<Framed<TcpStream, RedisCodec>>),
[INFO] [stderr]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'tokio_io::codec::Framed': Moved to tokio-codec
[INFO] [stderr]    --> src/multiplexer/types.rs:127:17
[INFO] [stderr]     |
[INFO] [stderr] 127 |   Tcp(SplitSink<Framed<TcpStream, RedisCodec>>)
[INFO] [stderr]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'tokio_io::codec::Framed': Moved to tokio-codec
[INFO] [stderr]    --> src/multiplexer/types.rs:165:19
[INFO] [stderr]     |
[INFO] [stderr] 165 |   Tls(SplitStream<Framed<TcpStream, RedisCodec>>),
[INFO] [stderr]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'tokio_io::codec::Framed': Moved to tokio-codec
[INFO] [stderr]    --> src/multiplexer/types.rs:166:19
[INFO] [stderr]     |
[INFO] [stderr] 166 |   Tcp(SplitStream<Framed<TcpStream, RedisCodec>>)
[INFO] [stderr]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'tokio_io::codec::Framed': Moved to tokio-codec
[INFO] [stderr]   --> src/multiplexer/connection.rs:77:5
[INFO] [stderr]    |
[INFO] [stderr] 77 | use tokio_io::codec::Framed;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'tokio_io::codec::Framed': Moved to tokio-codec
[INFO] [stderr]    --> src/multiplexer/connection.rs:120:33
[INFO] [stderr]     |
[INFO] [stderr] 120 |   -> Box<Future<Item=(SplitSink<Framed<TcpStream, RedisCodec>>, SplitStream<Framed<TcpStream, RedisCodec>>), Error=RedisError>>
[INFO] [stderr]     |                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'tokio_io::codec::Framed': Moved to tokio-codec
[INFO] [stderr]    --> src/multiplexer/connection.rs:120:77
[INFO] [stderr]     |
[INFO] [stderr] 120 |   -> Box<Future<Item=(SplitSink<Framed<TcpStream, RedisCodec>>, SplitStream<Framed<TcpStream, RedisCodec>>), Error=RedisError>>
[INFO] [stderr]     |                                                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'tokio_io::codec::Framed': Moved to tokio-codec
[INFO] [stderr]    --> src/multiplexer/connection.rs:170:33
[INFO] [stderr]     |
[INFO] [stderr] 170 |   -> Box<Future<Item=(SplitSink<Framed<TcpStream, RedisCodec>>, SplitStream<Framed<TcpStream, RedisCodec>>), Error=RedisError>>
[INFO] [stderr]     |                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'tokio_io::codec::Framed': Moved to tokio-codec
[INFO] [stderr]    --> src/multiplexer/connection.rs:170:77
[INFO] [stderr]     |
[INFO] [stderr] 170 |   -> Box<Future<Item=(SplitSink<Framed<TcpStream, RedisCodec>>, SplitStream<Framed<TcpStream, RedisCodec>>), Error=RedisError>>
[INFO] [stderr]     |                                                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'tokio_io::codec::Framed': Moved to tokio-codec
[INFO] [stderr]    --> src/multiplexer/connection.rs:193:39
[INFO] [stderr]     |
[INFO] [stderr] 193 | pub fn request_response<T>(transport: Framed<T, RedisCodec>, request: &RedisCommand) -> Box<Future<Item=(Frame, Framed<T, RedisCodec>), Error=RedisError>>
[INFO] [stderr]     |                                       ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'tokio_io::codec::Framed': Moved to tokio-codec
[INFO] [stderr]    --> src/multiplexer/connection.rs:193:113
[INFO] [stderr]     |
[INFO] [stderr] 193 | pub fn request_response<T>(transport: Framed<T, RedisCodec>, request: &RedisCommand) -> Box<Future<Item=(Frame, Framed<T, RedisCodec>), Error=RedisError>>
[INFO] [stderr]     |                                                                                                                 ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'tokio_io::codec::Framed': Moved to tokio-codec
[INFO] [stderr]    --> src/multiplexer/connection.rs:212:35
[INFO] [stderr]     |
[INFO] [stderr] 212 | pub fn authenticate<T>(transport: Framed<T, RedisCodec>, name: String, key: Option<String>) -> Box<Future<Item=Framed<T, RedisCodec>, Error=RedisError>>
[INFO] [stderr]     |                                   ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'tokio_io::codec::Framed': Moved to tokio-codec
[INFO] [stderr]    --> src/multiplexer/connection.rs:212:112
[INFO] [stderr]     |
[INFO] [stderr] 212 | pub fn authenticate<T>(transport: Framed<T, RedisCodec>, name: String, key: Option<String>) -> Box<Future<Item=Framed<T, RedisCodec>, Error=RedisError>>
[INFO] [stderr]     |                                                                                                                ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'tokio_io::codec::Framed': Moved to tokio-codec
[INFO] [stderr]    --> src/multiplexer/connection.rs:267:110
[INFO] [stderr]     |
[INFO] [stderr] 267 | pub fn create_initial_transport_tls(handle: Handle, inner: &Arc<RedisClientInner>) -> Box<Future<Item=Option<Framed<TcpStream, RedisCodec>>, Error=RedisError>> {
[INFO] [stderr]     |                                                                                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'tokio_io::codec::Framed': Moved to tokio-codec
[INFO] [stderr]    --> src/multiplexer/connection.rs:382:35
[INFO] [stderr]     |
[INFO] [stderr] 382 |   -> Box<Future<Item=Vec<(String, Framed<TcpStream, RedisCodec>)>, Error=RedisError>>
[INFO] [stderr]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'tokio_io::codec::Framed': Moved to tokio-codec
[INFO] [stderr]   --> src/multiplexer/init.rs:68:5
[INFO] [stderr]    |
[INFO] [stderr] 68 | use tokio_io::codec::Framed;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'tokio_io::codec::Framed': Moved to tokio-codec
[INFO] [stderr]   --> src/multiplexer/init.rs:91:18
[INFO] [stderr]    |
[INFO] [stderr] 91 | type TlsFramed = Framed<TcpStream, RedisCodec>;
[INFO] [stderr]    |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'tokio_io::codec::Framed': Moved to tokio-codec
[INFO] [stderr]   --> src/multiplexer/init.rs:93:18
[INFO] [stderr]    |
[INFO] [stderr] 93 | type TcpFramed = Framed<TcpStream, RedisCodec>;
[INFO] [stderr]    |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> examples/http.rs:65:21
[INFO] [stderr]    |
[INFO] [stderr] 65 |   type Future = Box<Future<Item=Response, Error=hyper::Error>>;
[INFO] [stderr]    |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Response, Error=hyper::Error>`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated item 'tokio_io::AsyncRead::framed': Use tokio_codec::Decoder::framed instead
[INFO] [stderr]    --> src/multiplexer/connection.rs:180:39
[INFO] [stderr]     |
[INFO] [stderr] 180 |     .and_then(move |socket| Ok(socket.framed(codec)))
[INFO] [stderr]     |                                       ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> tests/integration/utils.rs:47:27
[INFO] [stderr]    |
[INFO] [stderr] 47 | pub type TestFuture = Box<Future<Item=(), Error=RedisError>>;
[INFO] [stderr]    |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(), Error=RedisError>`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> tests/integration/utils.rs:60:57
[INFO] [stderr]    |
[INFO] [stderr] 60 | pub fn future_error<T: 'static>(err: RedisError) -> Box<Future<Item = T, Error = RedisError>> {
[INFO] [stderr]    |                                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item = T, Error = RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> tests/integration/utils.rs:64:43
[INFO] [stderr]    |
[INFO] [stderr] 64 | pub fn future_ok<T: 'static>(d: T) -> Box<Future<Item = T, Error = RedisError>> {
[INFO] [stderr]    |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item = T, Error = RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> tests/integration/utils.rs:101:79
[INFO] [stderr]     |
[INFO] [stderr] 101 | fn flush_two_centralized(client_1: RedisClient, client_2: RedisClient) -> Box<Future<Item=(RedisClient, RedisClient), Error=RedisError>> {
[INFO] [stderr]     |                                                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(RedisClient, RedisClient), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> tests/integration/keys/mod.rs:23:66
[INFO] [stderr]    |
[INFO] [stderr] 23 | pub fn should_set_and_get_simple_key(client: RedisClient) -> Box<Future<Item=(), Error=RedisError>> {
[INFO] [stderr]    |                                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> tests/integration/keys/mod.rs:47:65
[INFO] [stderr]    |
[INFO] [stderr] 47 | pub fn should_set_and_get_large_key(client: RedisClient) -> Box<Future<Item=(), Error=RedisError>> {
[INFO] [stderr]    |                                                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> tests/integration/keys/mod.rs:73:67
[INFO] [stderr]    |
[INFO] [stderr] 73 | pub fn should_set_and_get_random_keys(client: RedisClient) -> Box<Future<Item=(), Error=RedisError>> {
[INFO] [stderr]    |                                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> tests/integration/keys/mod.rs:104:61
[INFO] [stderr]     |
[INFO] [stderr] 104 | pub fn should_expire_and_persist(client: RedisClient)-> Box<Future<Item=(), Error=RedisError>>{
[INFO] [stderr]     |                                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> tests/integration/hashes/mod.rs:22:66
[INFO] [stderr]    |
[INFO] [stderr] 22 | pub fn should_set_and_get_simple_key(client: RedisClient) -> Box<Future<Item=(), Error=RedisError>> {
[INFO] [stderr]    |                                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> tests/integration/hashes/mod.rs:45:70
[INFO] [stderr]    |
[INFO] [stderr] 45 | pub fn should_set_and_get_all_simple_key(client: RedisClient) -> Box<Future<Item=(), Error=RedisError>> {
[INFO] [stderr]    |                                                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> tests/integration/hashes/mod.rs:65:57
[INFO] [stderr]    |
[INFO] [stderr] 65 | pub fn should_check_hexists(client: RedisClient) -> Box<Future<Item=(), Error=RedisError>> {
[INFO] [stderr]    |                                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> tests/integration/hashes/mod.rs:83:59
[INFO] [stderr]    |
[INFO] [stderr] 83 | pub fn should_read_large_hash(client: RedisClient) -> Box<Future<Item=(), Error=RedisError>> {
[INFO] [stderr]    |                                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> tests/integration/lists/mod.rs:15:62
[INFO] [stderr]    |
[INFO] [stderr] 15 | pub fn should_llen_on_empty_list(client: RedisClient) -> Box<Future<Item=(), Error=RedisError>> {
[INFO] [stderr]    |                                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> tests/integration/lists/mod.rs:23:70
[INFO] [stderr]    |
[INFO] [stderr] 23 | pub fn should_llen_on_list_with_elements(client: RedisClient) -> Box<Future<Item=(), Error=RedisError>> {
[INFO] [stderr]    |                                                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> tests/integration/lists/mod.rs:46:66
[INFO] [stderr]    |
[INFO] [stderr] 46 | pub fn should_lpush_and_lpop_to_list(client: RedisClient) -> Box<Future<Item=(), Error=RedisError>> {
[INFO] [stderr]    |                                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> tests/integration/pubsub/mod.rs:40:103
[INFO] [stderr]    |
[INFO] [stderr] 40 | pub fn should_psubscribe_on_multiple_channels(publisher: RedisClient, subscriber: RedisClient) -> Box<Future<Item=(), Error=RedisError>> {
[INFO] [stderr]    |                                                                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> tests/integration/pubsub/mod.rs:104:105
[INFO] [stderr]     |
[INFO] [stderr] 104 | pub fn should_punsubscribe_on_multiple_channels(publisher: RedisClient, subscriber: RedisClient) -> Box<Future<Item=(), Error=RedisError>> {
[INFO] [stderr]     |                                                                                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> tests/integration/sets/mod.rs:17:63
[INFO] [stderr]    |
[INFO] [stderr] 17 | pub fn should_sadd_members_to_set(client: RedisClient) -> Box<Future<Item=(), Error=RedisError>> {
[INFO] [stderr]    |                                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> tests/integration/sets/mod.rs:49:63
[INFO] [stderr]    |
[INFO] [stderr] 49 | pub fn should_srem_members_of_set(client: RedisClient) -> Box<Future<Item=(), Error=RedisError>> {
[INFO] [stderr]    |                                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> tests/integration/sets/mod.rs:80:59
[INFO] [stderr]    |
[INFO] [stderr] 80 | pub fn should_smembers_of_set(client: RedisClient) -> Box<Future<Item=(), Error=RedisError>> {
[INFO] [stderr]    |                                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> tests/integration/other/scan.rs:15:64
[INFO] [stderr]    |
[INFO] [stderr] 15 | pub fn should_scan_simple_database(client: RedisClient) -> Box<Future<Item=(), Error=RedisError>> {
[INFO] [stderr]    |                                                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> tests/integration/other/hscan.rs:15:65
[INFO] [stderr]    |
[INFO] [stderr] 15 | pub fn should_hscan_simple_database(client: RedisClient) -> Box<Future<Item=(), Error=RedisError>> {
[INFO] [stderr]    |                                                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> tests/integration/other/zscan.rs:15:65
[INFO] [stderr]    |
[INFO] [stderr] 15 | pub fn should_zscan_simple_database(client: RedisClient) -> Box<Future<Item=(), Error=RedisError>> {
[INFO] [stderr]    |                                                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> tests/integration/other/sscan.rs:15:65
[INFO] [stderr]    |
[INFO] [stderr] 15 | pub fn should_sscan_simple_database(client: RedisClient) -> Box<Future<Item=(), Error=RedisError>> {
[INFO] [stderr]    |                                                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> tests/integration/sorted_sets/basic.rs:21:67
[INFO] [stderr]    |
[INFO] [stderr] 21 | pub fn should_add_and_remove_elements(client: RedisClient) -> Box<Future<Item=(), Error=RedisError>> {
[INFO] [stderr]    |                                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> tests/integration/sorted_sets/basic.rs:63:64
[INFO] [stderr]    |
[INFO] [stderr] 63 | pub fn should_push_and_pop_min_max(client: RedisClient) -> Box<Future<Item=(), Error=RedisError>> {
[INFO] [stderr]    |                                                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> tests/integration/sorted_sets/lex.rs:21:67
[INFO] [stderr]    |
[INFO] [stderr] 21 | pub fn should_read_sorted_lex_entries(client: RedisClient) -> Box<Future<Item=(), Error=RedisError>> {
[INFO] [stderr]    |                                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> tests/integration/sorted_sets/score.rs:21:69
[INFO] [stderr]    |
[INFO] [stderr] 21 | pub fn should_read_sorted_score_entries(client: RedisClient) -> Box<Future<Item=(), Error=RedisError>> {
[INFO] [stderr]    |                                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> tests/integration/sorted_sets/set_ops.rs:21:66
[INFO] [stderr]    |
[INFO] [stderr] 21 | pub fn should_perform_set_operations(client: RedisClient) -> Box<Future<Item=(), Error=RedisError>> {
[INFO] [stderr]    |                                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=(), Error=RedisError>`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `init_ft`
[INFO] [stderr]    --> src/utils.rs:314:24
[INFO] [stderr]     |
[INFO] [stderr] 314 |       Ok(Either::A((_, init_ft))) => {
[INFO] [stderr]     |                        ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_init_ft`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `timer_ft`
[INFO] [stderr]    --> src/utils.rs:318:30
[INFO] [stderr]     |
[INFO] [stderr] 318 |       Ok(Either::B((clients, timer_ft))) => {
[INFO] [stderr]     |                              ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_timer_ft`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `init_ft`
[INFO] [stderr]    --> src/utils.rs:322:33
[INFO] [stderr]     |
[INFO] [stderr] 322 |       Err(Either::A((timer_err, init_ft))) => {
[INFO] [stderr]     |                                 ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_init_ft`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `timer_ft`
[INFO] [stderr]    --> src/utils.rs:327:32
[INFO] [stderr]     |
[INFO] [stderr] 327 |       Err(Either::B((init_err, timer_ft))) => {
[INFO] [stderr]     |                                ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_timer_ft`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `e`
[INFO] [stderr]    --> src/multiplexer/mod.rs:270:22
[INFO] [stderr]     |
[INFO] [stderr] 270 |           if let Err(e) = last_command_callback.send(None) {
[INFO] [stderr]     |                      ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `e`
[INFO] [stderr]    --> src/multiplexer/mod.rs:300:22
[INFO] [stderr]     |
[INFO] [stderr] 300 |           if let Err(e) = last_command_callback.send(Some((last_command, e))) {
[INFO] [stderr]     |                      ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `e`
[INFO] [stderr]    --> src/multiplexer/mod.rs:218:20
[INFO] [stderr]     |
[INFO] [stderr] 218 |         if let Err(e) = last_command_callback.send(Some((last_command, e))) {
[INFO] [stderr]     |                    ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `final_self`
[INFO] [stderr]    --> src/multiplexer/mod.rs:225:9
[INFO] [stderr]     |
[INFO] [stderr] 225 |     let final_self = self.clone();
[INFO] [stderr]     |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_final_self`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `init_ft`
[INFO] [stderr]    --> src/multiplexer/init.rs:276:26
[INFO] [stderr]     |
[INFO] [stderr] 276 |         Ok(Either::A((_, init_ft))) => {
[INFO] [stderr]     |                          ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_init_ft`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `multiplexer`
[INFO] [stderr]    --> src/multiplexer/init.rs:284:23
[INFO] [stderr]     |
[INFO] [stderr] 284 |         Ok(Either::B((multiplexer, timer_ft))) => {
[INFO] [stderr]     |                       ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_multiplexer`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `timer_ft`
[INFO] [stderr]    --> src/multiplexer/init.rs:284:36
[INFO] [stderr]     |
[INFO] [stderr] 284 |         Ok(Either::B((multiplexer, timer_ft))) => {
[INFO] [stderr]     |                                    ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_timer_ft`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `init_ft`
[INFO] [stderr]    --> src/multiplexer/init.rs:288:35
[INFO] [stderr]     |
[INFO] [stderr] 288 |         Err(Either::A((timer_err, init_ft))) => {
[INFO] [stderr]     |                                   ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_init_ft`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `timer_ft`
[INFO] [stderr]    --> src/multiplexer/init.rs:293:34
[INFO] [stderr]     |
[INFO] [stderr] 293 |         Err(Either::B((init_err, timer_ft))) => {
[INFO] [stderr]     |                                  ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_timer_ft`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `auth_key`
[INFO] [stderr]    --> src/multiplexer/init.rs:225:9
[INFO] [stderr]     |
[INFO] [stderr] 225 |     let auth_key = utils::read_auth_key(&inner.config);
[INFO] [stderr]     |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_auth_key`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `init_ft`
[INFO] [stderr]    --> src/multiplexer/init.rs:382:26
[INFO] [stderr]     |
[INFO] [stderr] 382 |         Ok(Either::A((_, init_ft))) => {
[INFO] [stderr]     |                          ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_init_ft`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `multiplexer`
[INFO] [stderr]    --> src/multiplexer/init.rs:390:23
[INFO] [stderr]     |
[INFO] [stderr] 390 |         Ok(Either::B((multiplexer, timer_ft))) => {
[INFO] [stderr]     |                       ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_multiplexer`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `timer_ft`
[INFO] [stderr]    --> src/multiplexer/init.rs:390:36
[INFO] [stderr]     |
[INFO] [stderr] 390 |         Ok(Either::B((multiplexer, timer_ft))) => {
[INFO] [stderr]     |                                    ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_timer_ft`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `init_ft`
[INFO] [stderr]    --> src/multiplexer/init.rs:394:35
[INFO] [stderr]     |
[INFO] [stderr] 394 |         Err(Either::A((timer_err, init_ft))) => {
[INFO] [stderr]     |                                   ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_init_ft`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `timer_ft`
[INFO] [stderr]    --> src/multiplexer/init.rs:399:34
[INFO] [stderr]     |
[INFO] [stderr] 399 |         Err(Either::B((init_err, timer_ft))) => {
[INFO] [stderr]     |                                  ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_timer_ft`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `error`
[INFO] [stderr]    --> src/multiplexer/init.rs:582:40
[INFO] [stderr]     |
[INFO] [stderr] 582 |                 Ok(Some((last_command, error))) => {
[INFO] [stderr]     |                                        ^^^^^ help: if this is intentional, prefix it with an underscore: `_error`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `e2`
[INFO] [stderr]   --> src/pool.rs:94:27
[INFO] [stderr]    |
[INFO] [stderr] 94 |           (Some(e1), Some(e2)) => Some(e1),
[INFO] [stderr]    |                           ^^ help: if this is intentional, prefix it with an underscore: `_e2`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `e2`
[INFO] [stderr]    --> src/pool.rs:134:27
[INFO] [stderr]     |
[INFO] [stderr] 134 |           (Some(e1), Some(e2)) => Some(e1),
[INFO] [stderr]     |                           ^^ help: if this is intentional, prefix it with an underscore: `_e2`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/utils.rs:121:7
[INFO] [stderr]     |
[INFO] [stderr] 121 |   let mut state_ref = state_guard.deref_mut();
[INFO] [stderr]     |       ----^^^^^^^^^
[INFO] [stderr]     |       |
[INFO] [stderr]     |       help: remove this `mut`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_mut)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/utils.rs:187:7
[INFO] [stderr]     |
[INFO] [stderr] 187 |   let mut closed_ref = closed_guard.deref_mut();
[INFO] [stderr]     |       ----^^^^^^^^^^
[INFO] [stderr]     |       |
[INFO] [stderr]     |       help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/utils.rs:194:7
[INFO] [stderr]     |
[INFO] [stderr] 194 |   let mut closed_ref = closed_guard.deref_mut();
[INFO] [stderr]     |       ----^^^^^^^^^^
[INFO] [stderr]     |       |
[INFO] [stderr]     |       help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/utils.rs:256:7
[INFO] [stderr]     |
[INFO] [stderr] 256 |   let mut guard_ref = guard.deref_mut();
[INFO] [stderr]     |       ----^^^^^^^^^
[INFO] [stderr]     |       |
[INFO] [stderr]     |       help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/protocol/types.rs:138:9
[INFO] [stderr]     |
[INFO] [stderr] 138 |     for mut chunk in data.chunks_exact_mut(2) {
[INFO] [stderr]     |         ----^^^^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/protocol/types.rs:164:9
[INFO] [stderr]     |
[INFO] [stderr] 164 |     for mut chunk in data.chunks_exact_mut(2) {
[INFO] [stderr]     |         ----^^^^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/protocol/utils.rs:144:15
[INFO] [stderr]     |
[INFO] [stderr] 144 |       for (_, mut slots) in out.iter_mut() {
[INFO] [stderr]     |               ----^^^^^
[INFO] [stderr]     |               |
[INFO] [stderr]     |               help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/protocol/utils.rs:145:13
[INFO] [stderr]     |
[INFO] [stderr] 145 |         for mut slot in slots.iter_mut() {
[INFO] [stderr]     |             ----^^^^
[INFO] [stderr]     |             |
[INFO] [stderr]     |             help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/multiplexer/utils.rs:58:7
[INFO] [stderr]    |
[INFO] [stderr] 58 |   let mut guard_ref = guard.deref_mut();
[INFO] [stderr]    |       ----^^^^^^^^^
[INFO] [stderr]    |       |
[INFO] [stderr]    |       help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/multiplexer/utils.rs:171:7
[INFO] [stderr]     |
[INFO] [stderr] 171 |   let mut connect_tx_ref = connect_tx_guard.deref_mut();
[INFO] [stderr]     |       ----^^^^^^^^^^^^^^
[INFO] [stderr]     |       |
[INFO] [stderr]     |       help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/multiplexer/utils.rs:182:7
[INFO] [stderr]     |
[INFO] [stderr] 182 |   let mut tx_ref = tx_guard.deref_mut();
[INFO] [stderr]     |       ----^^^^^^
[INFO] [stderr]     |       |
[INFO] [stderr]     |       help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/multiplexer/utils.rs:199:7
[INFO] [stderr]     |
[INFO] [stderr] 199 |   let mut tx_ref = tx_guard.deref_mut();
[INFO] [stderr]     |       ----^^^^^^
[INFO] [stderr]     |       |
[INFO] [stderr]     |       help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/multiplexer/utils.rs:297:7
[INFO] [stderr]     |
[INFO] [stderr] 297 |   let mut old_cursor = match last_request.kind {
[INFO] [stderr]     |       ----^^^^^^^^^^
[INFO] [stderr]     |       |
[INFO] [stderr]     |       help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/multiplexer/utils.rs:308:31
[INFO] [stderr]     |
[INFO] [stderr] 308 | pub fn handle_key_scan_result(mut frame: Frame) -> Result<(String, Vec<RedisKey>), RedisError> {
[INFO] [stderr]     |                               ----^^^^^
[INFO] [stderr]     |                               |
[INFO] [stderr]     |                               help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/multiplexer/utils.rs:340:33
[INFO] [stderr]     |
[INFO] [stderr] 340 | pub fn handle_value_scan_result(mut frame: Frame) -> Result<(String, Vec<RedisValue>), RedisError> {
[INFO] [stderr]     |                                 ----^^^^^
[INFO] [stderr]     |                                 |
[INFO] [stderr]     |                                 help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/multiplexer/utils.rs:372:60
[INFO] [stderr]     |
[INFO] [stderr] 372 | pub fn send_key_scan_result(inner: &Arc<RedisClientInner>, mut cmd: RedisCommand, result: Vec<RedisKey>, can_continue: bool) -> Result<(), RedisError> {
[INFO] [stderr]     |                                                            ----^^^
[INFO] [stderr]     |                                                            |
[INFO] [stderr]     |                                                            help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/multiplexer/utils.rs:400:62
[INFO] [stderr]     |
[INFO] [stderr] 400 | pub fn send_value_scan_result(inner: &Arc<RedisClientInner>, mut cmd: RedisCommand, result: Vec<RedisValue>, can_continue: bool) -> Result<(), RedisError> {
[INFO] [stderr]     |                                                              ----^^^
[INFO] [stderr]     |                                                              |
[INFO] [stderr]     |                                                              help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/multiplexer/utils.rs:510:11
[INFO] [stderr]     |
[INFO] [stderr] 510 |       let mut message_tx_ref = message_tx_guard.deref_mut();
[INFO] [stderr]     |           ----^^^^^^^^^^^^^^
[INFO] [stderr]     |           |
[INFO] [stderr]     |           help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/multiplexer/utils.rs:526:13
[INFO] [stderr]     |
[INFO] [stderr] 526 |         let mut response_kind = match last_request.kind.response_kind_mut() {
[INFO] [stderr]     |             ----^^^^^^^^^^^^^
[INFO] [stderr]     |             |
[INFO] [stderr]     |             help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/multiplexer/init.rs:340:22
[INFO] [stderr]     |
[INFO] [stderr] 340 |     .and_then(move |(mut transports, cache)| {
[INFO] [stderr]     |                      ----^^^^^^^^^^
[INFO] [stderr]     |                      |
[INFO] [stderr]     |                      help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/types.rs:725:11
[INFO] [stderr]     |
[INFO] [stderr] 725 |   fn from(mut d: Vec<T>) -> Self {
[INFO] [stderr]     |           ----^
[INFO] [stderr]     |           |
[INFO] [stderr]     |           help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/types.rs:733:11
[INFO] [stderr]     |
[INFO] [stderr] 733 |   fn from(mut d: VecDeque<T>) -> Self {
[INFO] [stderr]     |           ----^
[INFO] [stderr]     |           |
[INFO] [stderr]     |           help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/types.rs:771:11
[INFO] [stderr]     |
[INFO] [stderr] 771 |   fn from(mut d: Vec<T>) -> Self {
[INFO] [stderr]     |           ----^
[INFO] [stderr]     |           |
[INFO] [stderr]     |           help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/types.rs:779:11
[INFO] [stderr]     |
[INFO] [stderr] 779 |   fn from(mut d: VecDeque<T>) -> Self {
[INFO] [stderr]     |           ----^
[INFO] [stderr]     |           |
[INFO] [stderr]     |           help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/client.rs:112:9
[INFO] [stderr]     |
[INFO] [stderr] 112 |     let mut guard_ref = guard.deref_mut();
[INFO] [stderr]     |         ----^^^^^^^^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/commands.rs:48:9
[INFO] [stderr]    |
[INFO] [stderr] 48 |     let mut closed_ref = closed_guard.deref_mut();
[INFO] [stderr]    |         ----^^^^^^^^^^
[INFO] [stderr]    |         |
[INFO] [stderr]    |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: unused `std::result::Result` that must be used
[INFO] [stderr]   --> tests/integration/other/scan.rs:30:7
[INFO] [stderr]    |
[INFO] [stderr] 30 |       state.next();
[INFO] [stderr]    |       ^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_must_use)]` on by default
[INFO] [stderr]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] 
[INFO] [stderr] warning: unused `std::result::Result` that must be used
[INFO] [stderr]   --> tests/integration/other/hscan.rs:30:7
[INFO] [stderr]    |
[INFO] [stderr] 30 |       state.next();
[INFO] [stderr]    |       ^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] 
[INFO] [stderr] warning: unused `std::result::Result` that must be used
[INFO] [stderr]   --> tests/integration/other/zscan.rs:30:7
[INFO] [stderr]    |
[INFO] [stderr] 30 |       state.next();
[INFO] [stderr]    |       ^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] 
[INFO] [stderr] warning: unused `std::result::Result` that must be used
[INFO] [stderr]   --> tests/integration/other/sscan.rs:30:7
[INFO] [stderr]    |
[INFO] [stderr] 30 |       state.next();
[INFO] [stderr]    |       ^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/commands.rs:751:9
[INFO] [stderr]     |
[INFO] [stderr] 751 |     for mut chunk in resp.chunks_mut(2) {
[INFO] [stderr]     |         ----^^^^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]     --> src/commands.rs:1624:9
[INFO] [stderr]      |
[INFO] [stderr] 1624 |     let mut args = vec![
[INFO] [stderr]      |         ----^^^^
[INFO] [stderr]      |         |
[INFO] [stderr]      |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/borrowed.rs:534:98
[INFO] [stderr]     |
[INFO] [stderr] 534 |   fn hmset<V: Into<RedisValue>, F: Into<RedisKey> + Hash + Eq, K: Into<RedisKey>>(&self, key: K, mut values: HashMap<F, V>) -> Box<Future<Item=String, Error=RedisError>> {
[INFO] [stderr]     |                                                                                                  ----^^^^^^
[INFO] [stderr]     |                                                                                                  |
[INFO] [stderr]     |                                                                                                  help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/owned.rs:530:97
[INFO] [stderr]     |
[INFO] [stderr] 530 |   fn hmset<V: Into<RedisValue>, F: Into<RedisKey> + Hash + Eq, K: Into<RedisKey>>(self, key: K, mut values: HashMap<F, V>) -> Box<Future<Item=(Self, String), Error=RedisError>> {
[INFO] [stderr]     |                                                                                                 ----^^^^^^
[INFO] [stderr]     |                                                                                                 |
[INFO] [stderr]     |                                                                                                 help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `future_ok_generic`
[INFO] [stderr]    --> src/utils.rs:141:8
[INFO] [stderr]     |
[INFO] [stderr] 141 | pub fn future_ok_generic<T: 'static, E: 'static>(d: T) -> Box<Future<Item=T, Error=E>> {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(dead_code)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `stream_error`
[INFO] [stderr]    --> src/utils.rs:145:8
[INFO] [stderr]     |
[INFO] [stderr] 145 | pub fn stream_error<T: 'static>(e: RedisError) -> Box<Stream<Item=T, Error=RedisError>> {
[INFO] [stderr]     |        ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `reset_reconnect_attempts`
[INFO] [stderr]    --> src/utils.rs:149:8
[INFO] [stderr]     |
[INFO] [stderr] 149 | pub fn reset_reconnect_attempts(reconnect: &RwLock<Option<ReconnectPolicy>>) {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `u64_to_i64_max`
[INFO] [stderr]    --> src/utils.rs:155:8
[INFO] [stderr]     |
[INFO] [stderr] 155 | pub fn u64_to_i64_max(u: u64) -> i64 {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `compare_f64`
[INFO] [stderr]    --> src/utils.rs:173:8
[INFO] [stderr]     |
[INFO] [stderr] 173 | pub fn compare_f64(lhs: &f64, rhs: &f64) -> bool {
[INFO] [stderr]     |        ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `to_url_string`
[INFO] [stderr]    --> src/utils.rs:177:8
[INFO] [stderr]     |
[INFO] [stderr] 177 | pub fn to_url_string(host: &str, port: u16) -> String {
[INFO] [stderr]     |        ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `set_closed_flag`
[INFO] [stderr]    --> src/utils.rs:185:8
[INFO] [stderr]     |
[INFO] [stderr] 185 | pub fn set_closed_flag(closed: &RwLock<bool>, flag: bool) {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant item is never used: `CR`
[INFO] [stderr]   --> src/protocol/types.rs:31:1
[INFO] [stderr]    |
[INFO] [stderr] 31 | pub const CR: char = '\r';
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant item is never used: `LF`
[INFO] [stderr]   --> src/protocol/types.rs:32:1
[INFO] [stderr]    |
[INFO] [stderr] 32 | pub const LF: char = '\n';
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: type alias is never used: `RefreshCache`
[INFO] [stderr]     --> src/protocol/types.rs:1029:1
[INFO] [stderr]      |
[INFO] [stderr] 1029 | pub type RefreshCache = bool;
[INFO] [stderr]      | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method is never used: `clear`
[INFO] [stderr]     --> src/protocol/types.rs:1143:3
[INFO] [stderr]      |
[INFO] [stderr] 1143 |   pub fn clear(&mut self) {
[INFO] [stderr]      |   ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method is never used: `next`
[INFO] [stderr]     --> src/protocol/types.rs:1148:3
[INFO] [stderr]      |
[INFO] [stderr] 1148 |   pub fn next(&mut self) -> Option<String> {
[INFO] [stderr]      |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method is never used: `len`
[INFO] [stderr]     --> src/protocol/types.rs:1216:3
[INFO] [stderr]      |
[INFO] [stderr] 1216 |   pub fn len(&self) -> usize {
[INFO] [stderr]      |   ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `reconnect`
[INFO] [stderr]    --> src/protocol/utils.rs:343:8
[INFO] [stderr]     |
[INFO] [stderr] 343 | pub fn reconnect(handle: Handle, inner: Arc<RedisClientInner>, mut result: Result<Option<RedisError>, RedisError>, force_no_delay: bool)
[INFO] [stderr]     |        ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: type alias is never used: `TlsTransports`
[INFO] [stderr]   --> src/multiplexer/types.rs:82:1
[INFO] [stderr]    |
[INFO] [stderr] 82 | pub type TlsTransports = Vec<(String, Framed<TcpStream, RedisCodec>)>;
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: type alias is never used: `TcpTransports`
[INFO] [stderr]   --> src/multiplexer/types.rs:84:1
[INFO] [stderr]    |
[INFO] [stderr] 84 | pub type TcpTransports = Vec<(String, Framed<TcpStream, RedisCodec>)>;
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `should_disable_cert_verification`
[INFO] [stderr]   --> src/multiplexer/connection.rs:92:4
[INFO] [stderr]    |
[INFO] [stderr] 92 | fn should_disable_cert_verification() -> bool {
[INFO] [stderr]    |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `create_initial_transport_tls`
[INFO] [stderr]    --> src/multiplexer/connection.rs:267:8
[INFO] [stderr]     |
[INFO] [stderr] 267 | pub fn create_initial_transport_tls(handle: Handle, inner: &Arc<RedisClientInner>) -> Box<Future<Item=Option<Framed<TcpStream, RedisCodec>>, Error=RedisError>> {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `create_all_transports_tls`
[INFO] [stderr]    --> src/multiplexer/connection.rs:381:8
[INFO] [stderr]     |
[INFO] [stderr] 381 | pub fn create_all_transports_tls(handle: Handle, cache: &ClusterKeyCache, key: Option<String>, inner: &Arc<RedisClientInner>)
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method is never used: `take_last_command_callback`
[INFO] [stderr]    --> src/multiplexer/mod.rs:148:3
[INFO] [stderr]     |
[INFO] [stderr] 148 |   pub fn take_last_command_callback(&self) -> Option<LastCommandCaller> {
[INFO] [stderr]     |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `decr_atomic`
[INFO] [stderr]   --> src/pool.rs:35:4
[INFO] [stderr]    |
[INFO] [stderr] 35 | fn decr_atomic(size: &Arc<AtomicUsize>) -> usize {
[INFO] [stderr]    |    ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function is never used: `set_atomic`
[INFO] [stderr]   --> src/pool.rs:47:4
[INFO] [stderr]    |
[INFO] [stderr] 47 | fn set_atomic(size: &Arc<AtomicUsize>, val: usize) -> usize {
[INFO] [stderr]    |    ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused attribute
[INFO] [stderr]   --> src/client.rs:46:1
[INFO] [stderr]    |
[INFO] [stderr] 46 | #[macro_use]
[INFO] [stderr]    | ^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_attributes)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused `std::result::Result` that must be used
[INFO] [stderr]    --> src/multiplexer/mod.rs:286:17
[INFO] [stderr]     |
[INFO] [stderr] 286 |                 tx.unbounded_send(RedisCommand::new(RedisCommandKind::_Close, vec![], None));
[INFO] [stderr]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_must_use)]` on by default
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] 
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 1m 10s
[INFO] running `"docker" "inspect" "a45fdb8846da4bbe1eaf6720962dd7b6fa4b347c5b97f59d6c3cc603b21ac040"`
[INFO] running `"docker" "rm" "-f" "a45fdb8846da4bbe1eaf6720962dd7b6fa4b347c5b97f59d6c3cc603b21ac040"`
[INFO] [stdout] a45fdb8846da4bbe1eaf6720962dd7b6fa4b347c5b97f59d6c3cc603b21ac040
