[INFO] cloning repository https://github.com/laohanlinux/canal-rs
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/laohanlinux/canal-rs" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flaohanlinux%2Fcanal-rs", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flaohanlinux%2Fcanal-rs'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 43e0f683fb28120938a2060d88abb31e197cb9de
[INFO] testing laohanlinux/canal-rs against 1.76.0 for beta-1.77-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flaohanlinux%2Fcanal-rs" "/workspace/builds/worker-0-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc1/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/laohanlinux/canal-rs on toolchain 1.76.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.76.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/laohanlinux/canal-rs
[INFO] finished tweaking git repo https://github.com/laohanlinux/canal-rs
[INFO] tweaked toml for git repo https://github.com/laohanlinux/canal-rs written to /workspace/builds/worker-0-tc1/source/Cargo.toml
[INFO] crate git repo https://github.com/laohanlinux/canal-rs already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.76.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded snowflake v1.3.0
[INFO] [stderr]   Downloaded zookeeper_derive v0.4.1
[INFO] [stderr]   Downloaded zookeeper v0.5.10
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+1.76.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] b1c6a0361e6b3515195dc07af7017aa88c995d45d224bb97c59ece629bd16430
[INFO] running `Command { std: "docker" "start" "-a" "b1c6a0361e6b3515195dc07af7017aa88c995d45d224bb97c59ece629bd16430", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "b1c6a0361e6b3515195dc07af7017aa88c995d45d224bb97c59ece629bd16430", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b1c6a0361e6b3515195dc07af7017aa88c995d45d224bb97c59ece629bd16430", kill_on_drop: false }`
[INFO] [stdout] b1c6a0361e6b3515195dc07af7017aa88c995d45d224bb97c59ece629bd16430
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+1.76.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] db8c58ffbbeaabc49d0b2296af187b45c80ce8180e391211d0262117ccd34142
[INFO] running `Command { std: "docker" "start" "-a" "db8c58ffbbeaabc49d0b2296af187b45c80ce8180e391211d0262117ccd34142", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.29
[INFO] [stderr]    Compiling autocfg v1.0.1
[INFO] [stderr]    Compiling unicode-xid v0.2.2
[INFO] [stderr]    Compiling libc v0.2.103
[INFO] [stderr]    Compiling syn v1.0.80
[INFO] [stderr]    Compiling cfg-if v1.0.0
[INFO] [stderr]    Compiling memchr v2.4.1
[INFO] [stderr]    Compiling log v0.4.14
[INFO] [stderr]    Compiling serde v1.0.130
[INFO] [stderr]    Compiling futures-core v0.3.17
[INFO] [stderr]    Compiling slab v0.4.4
[INFO] [stderr]    Compiling proc-macro-hack v0.5.19
[INFO] [stderr]    Compiling futures-channel v0.3.17
[INFO] [stderr]    Compiling futures-task v0.3.17
[INFO] [stderr]    Compiling futures-sink v0.3.17
[INFO] [stderr]    Compiling parking_lot_core v0.8.5
[INFO] [stderr]    Compiling pin-project-lite v0.2.7
[INFO] [stderr]    Compiling proc-macro-nested v0.1.7
[INFO] [stderr]    Compiling instant v0.1.11
[INFO] [stderr]    Compiling scopeguard v1.1.0
[INFO] [stderr]    Compiling futures-io v0.3.17
[INFO] [stderr]    Compiling smallvec v1.7.0
[INFO] [stderr]    Compiling cc v1.0.71
[INFO] [stderr]    Compiling cfg-if v0.1.10
[INFO] [stderr]    Compiling lock_api v0.4.5
[INFO] [stderr]    Compiling pin-utils v0.1.0
[INFO] [stderr]    Compiling failure_derive v0.1.8
[INFO] [stderr]    Compiling ryu v1.0.5
[INFO] [stderr]    Compiling gimli v0.25.0
[INFO] [stderr]    Compiling futures-macro v0.3.17
[INFO] [stderr]    Compiling miniz_oxide v0.4.4
[INFO] [stderr]    Compiling futures-util v0.3.17
[INFO] [stderr]    Compiling tokio v1.12.0
[INFO] [stderr]    Compiling adler v1.0.2
[INFO] [stderr]    Compiling lazycell v1.3.0
[INFO] [stderr]    Compiling rustc-demangle v0.1.21
[INFO] [stderr]    Compiling protobuf v2.25.1
[INFO] [stderr]    Compiling serde_derive v1.0.130
[INFO] [stderr]    Compiling once_cell v1.8.0
[INFO] [stderr]    Compiling serde_json v1.0.68
[INFO] [stderr]    Compiling itoa v0.4.8
[INFO] [stderr]    Compiling snowflake v1.3.0
[INFO] [stderr]    Compiling quote v1.0.10
[INFO] [stderr]    Compiling object v0.26.2
[INFO] [stderr]    Compiling byteorder v1.4.3
[INFO] [stderr]    Compiling bytes v0.5.6
[INFO] [stderr]    Compiling lazy_static v1.4.0
[INFO] [stderr]    Compiling net2 v0.2.37
[INFO] [stderr]    Compiling iovec v0.1.4
[INFO] [stderr]    Compiling mio v0.7.13
[INFO] [stderr]    Compiling num_cpus v1.13.0
[INFO] [stderr]    Compiling signal-hook-registry v1.4.0
[INFO] [stderr]    Compiling mio v0.6.23
[INFO] [stderr]    Compiling parking_lot v0.11.2
[INFO] [stderr]    Compiling backtrace v0.3.61
[INFO] [stderr]    Compiling mio-extras v2.0.6
[INFO] [stderr]    Compiling addr2line v0.16.0
[INFO] [stderr]    Compiling bytes v1.1.0
[INFO] [stderr]    Compiling synstructure v0.12.5
[INFO] [stderr]    Compiling tokio-macros v1.4.1
[INFO] [stderr]    Compiling zookeeper_derive v0.4.1
[INFO] [stderr]    Compiling zookeeper v0.5.10
[INFO] [stderr]    Compiling failure v0.1.8
[INFO] [stderr]    Compiling futures-executor v0.3.17
[INFO] [stderr]    Compiling futures v0.3.17
[INFO] [stderr]    Compiling tokio-util v0.6.8
[INFO] [stderr]    Compiling canal-rs v0.1.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `info`, `trace`, `warn`
[INFO] [stdout]  --> src/client.rs:2:11
[INFO] [stdout]   |
[INFO] [stdout] 2 | use log::{info, trace, warn};
[INFO] [stdout]   |           ^^^^  ^^^^^  ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::error::Error`
[INFO] [stdout]  --> src/client.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::error::Error;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::time::Duration`
[INFO] [stdout]  --> src/client.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::time::Duration;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AsyncRead`, `AsyncWriteExt`, `AsyncWrite`
[INFO] [stdout]  --> src/client.rs:7:17
[INFO] [stdout]   |
[INFO] [stdout] 7 | use tokio::io::{AsyncRead, AsyncReadExt, AsyncWrite, AsyncWriteExt};
[INFO] [stdout]   |                 ^^^^^^^^^                ^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BytesMut`
[INFO] [stdout]  --> src/client.rs:9:20
[INFO] [stdout]   |
[INFO] [stdout] 9 | use bytes::{Bytes, BytesMut};
[INFO] [stdout]   |                    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Sink`, `Stream`, `future`
[INFO] [stdout]   --> src/client.rs:11:15
[INFO] [stdout]    |
[INFO] [stdout] 11 | use futures::{future, Sink, SinkExt, Stream, StreamExt};
[INFO] [stdout]    |               ^^^^^^  ^^^^           ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Fail`, `err_msg`
[INFO] [stdout]   --> src/client.rs:12:38
[INFO] [stdout]    |
[INFO] [stdout] 12 | use failure::{Error as FailureError, Fail, err_msg};
[INFO] [stdout]    |                                      ^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `parse_from_bytes`
[INFO] [stdout]   --> src/client.rs:27:25
[INFO] [stdout]    |
[INFO] [stdout] 27 | use protobuf::{Message, parse_from_bytes};
[INFO] [stdout]    |                         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Watch`, `ZkError`, `ZkResult`
[INFO] [stdout]  --> src/cluster.rs:1:17
[INFO] [stdout]   |
[INFO] [stdout] 1 | use zookeeper::{ZkResult, ZooKeeper, Watch, WatchedEvent, Watcher, ZkError};
[INFO] [stdout]   |                 ^^^^^^^^             ^^^^^                         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `SinkExt`, `Sink`, `Stream`, `future`
[INFO] [stdout]  --> src/cluster.rs:2:15
[INFO] [stdout]   |
[INFO] [stdout] 2 | use futures::{future, Sink, SinkExt, Stream, StreamExt, TryFutureExt};
[INFO] [stdout]   |               ^^^^^^  ^^^^  ^^^^^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Fail`
[INFO] [stdout]  --> src/cluster.rs:3:38
[INFO] [stdout]   |
[INFO] [stdout] 3 | use failure::{Error as FailureError, Fail};
[INFO] [stdout]   |                                      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Receiver`, `Sender`, `self`
[INFO] [stdout]  --> src/cluster.rs:4:28
[INFO] [stdout]   |
[INFO] [stdout] 4 | use tokio::sync::oneshot::{self, Receiver, Sender};
[INFO] [stdout]   |                            ^^^^  ^^^^^^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::task`
[INFO] [stdout]  --> src/cluster.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use tokio::task;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::runtime::Runtime`
[INFO] [stdout]  --> src/cluster.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use tokio::runtime::Runtime;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Deserialize`, `Serialize`
[INFO] [stdout]  --> src/cluster.rs:7:13
[INFO] [stdout]   |
[INFO] [stdout] 7 | use serde::{Serialize, Deserialize};
[INFO] [stdout]   |             ^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Deserializer`, `Serializer`
[INFO] [stdout]  --> src/cluster.rs:8:18
[INFO] [stdout]   |
[INFO] [stdout] 8 | use serde_json::{Serializer, Deserializer};
[INFO] [stdout]   |                  ^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::str::FromStr`
[INFO] [stdout]   --> src/cluster.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use std::str::FromStr;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::net::SocketAddr`
[INFO] [stdout]   --> src/cluster.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use std::net::SocketAddr;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `protobuf::parse_from_bytes`: Use Message::parse_from_bytes instead
[INFO] [stdout]   --> src/client.rs:27:25
[INFO] [stdout]    |
[INFO] [stdout] 27 | use protobuf::{Message, parse_from_bytes};
[INFO] [stdout]    |                         ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `active_path`
[INFO] [stdout]    --> src/cluster.rs:110:21
[INFO] [stdout]     |
[INFO] [stdout] 110 |                 let active_path = format!("/otter/canal/destinations/{}/running", destinations.clone());
[INFO] [stdout]     |                     ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_active_path`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `TryFutureExt`
[INFO] [stdout]  --> src/cluster.rs:2:57
[INFO] [stdout]   |
[INFO] [stdout] 2 | use futures::{future, Sink, SinkExt, Stream, StreamExt, TryFutureExt};
[INFO] [stdout]   |                                                         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AsyncReadExt`
[INFO] [stdout]  --> src/client.rs:7:28
[INFO] [stdout]   |
[INFO] [stdout] 7 | use tokio::io::{AsyncRead, AsyncReadExt, AsyncWrite, AsyncWriteExt};
[INFO] [stdout]   |                            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `StreamExt`
[INFO] [stdout]  --> src/cluster.rs:2:46
[INFO] [stdout]   |
[INFO] [stdout] 2 | use futures::{future, Sink, SinkExt, Stream, StreamExt, TryFutureExt};
[INFO] [stdout]   |                                              ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 23 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 10.11s
[INFO] running `Command { std: "docker" "inspect" "db8c58ffbbeaabc49d0b2296af187b45c80ce8180e391211d0262117ccd34142", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "db8c58ffbbeaabc49d0b2296af187b45c80ce8180e391211d0262117ccd34142", kill_on_drop: false }`
[INFO] [stdout] db8c58ffbbeaabc49d0b2296af187b45c80ce8180e391211d0262117ccd34142
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+1.76.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 6686012a1164b32d568c2db4af6af028bd5f8440521531714a6e8c226301f618
[INFO] running `Command { std: "docker" "start" "-a" "6686012a1164b32d568c2db4af6af028bd5f8440521531714a6e8c226301f618", kill_on_drop: false }`
[INFO] [stdout] warning: unused imports: `info`, `trace`, `warn`
[INFO] [stdout]  --> src/client.rs:2:11
[INFO] [stdout]   |
[INFO] [stdout] 2 | use log::{info, trace, warn};
[INFO] [stdout]   |           ^^^^  ^^^^^  ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::error::Error`
[INFO] [stdout]  --> src/client.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::error::Error;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::time::Duration`
[INFO] [stdout]  --> src/client.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::time::Duration;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AsyncRead`, `AsyncWriteExt`, `AsyncWrite`
[INFO] [stdout]  --> src/client.rs:7:17
[INFO] [stdout]   |
[INFO] [stdout] 7 | use tokio::io::{AsyncRead, AsyncReadExt, AsyncWrite, AsyncWriteExt};
[INFO] [stdout]   |                 ^^^^^^^^^                ^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BytesMut`
[INFO] [stdout]  --> src/client.rs:9:20
[INFO] [stdout]   |
[INFO] [stdout] 9 | use bytes::{Bytes, BytesMut};
[INFO] [stdout]   |                    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Sink`, `Stream`, `future`
[INFO] [stdout]   --> src/client.rs:11:15
[INFO] [stdout]    |
[INFO] [stdout] 11 | use futures::{future, Sink, SinkExt, Stream, StreamExt};
[INFO] [stdout]    |               ^^^^^^  ^^^^           ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Fail`, `err_msg`
[INFO] [stdout]   --> src/client.rs:12:38
[INFO] [stdout]    |
[INFO] [stdout] 12 | use failure::{Error as FailureError, Fail, err_msg};
[INFO] [stdout]    |                                      ^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `parse_from_bytes`
[INFO] [stdout]   --> src/client.rs:27:25
[INFO] [stdout]    |
[INFO] [stdout] 27 | use protobuf::{Message, parse_from_bytes};
[INFO] [stdout]    |                         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Watch`, `ZkError`, `ZkResult`
[INFO] [stdout]  --> src/cluster.rs:1:17
[INFO] [stdout]   |
[INFO] [stdout] 1 | use zookeeper::{ZkResult, ZooKeeper, Watch, WatchedEvent, Watcher, ZkError};
[INFO] [stdout]   |                 ^^^^^^^^             ^^^^^                         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `SinkExt`, `Sink`, `Stream`, `future`
[INFO] [stdout]  --> src/cluster.rs:2:15
[INFO] [stdout]   |
[INFO] [stdout] 2 | use futures::{future, Sink, SinkExt, Stream, StreamExt, TryFutureExt};
[INFO] [stdout]   |               ^^^^^^  ^^^^  ^^^^^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Fail`
[INFO] [stdout]  --> src/cluster.rs:3:38
[INFO] [stdout]   |
[INFO] [stdout] 3 | use failure::{Error as FailureError, Fail};
[INFO] [stdout]   |                                      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Receiver`, `Sender`, `self`
[INFO] [stdout]  --> src/cluster.rs:4:28
[INFO] [stdout]   |
[INFO] [stdout] 4 | use tokio::sync::oneshot::{self, Receiver, Sender};
[INFO] [stdout]   |                            ^^^^  ^^^^^^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::task`
[INFO] [stdout]  --> src/cluster.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use tokio::task;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::runtime::Runtime`
[INFO] [stdout]  --> src/cluster.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use tokio::runtime::Runtime;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Deserialize`, `Serialize`
[INFO] [stdout]  --> src/cluster.rs:7:13
[INFO] [stdout]   |
[INFO] [stdout] 7 | use serde::{Serialize, Deserialize};
[INFO] [stdout]   |             ^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Deserializer`, `Serializer`
[INFO] [stdout]  --> src/cluster.rs:8:18
[INFO] [stdout]   |
[INFO] [stdout] 8 | use serde_json::{Serializer, Deserializer};
[INFO] [stdout]   |                  ^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::str::FromStr`
[INFO] [stdout]   --> src/cluster.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use std::str::FromStr;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::net::SocketAddr`
[INFO] [stdout]   --> src/cluster.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use std::net::SocketAddr;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `protobuf::parse_from_bytes`: Use Message::parse_from_bytes instead
[INFO] [stdout]   --> src/client.rs:27:25
[INFO] [stdout]    |
[INFO] [stdout] 27 | use protobuf::{Message, parse_from_bytes};
[INFO] [stdout]    |                         ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `active_path`
[INFO] [stdout]    --> src/cluster.rs:110:21
[INFO] [stdout]     |
[INFO] [stdout] 110 |                 let active_path = format!("/otter/canal/destinations/{}/running", destinations.clone());
[INFO] [stdout]     |                     ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_active_path`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `TryFutureExt`
[INFO] [stdout]  --> src/cluster.rs:2:57
[INFO] [stdout]   |
[INFO] [stdout] 2 | use futures::{future, Sink, SinkExt, Stream, StreamExt, TryFutureExt};
[INFO] [stdout]   |                                                         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AsyncReadExt`
[INFO] [stdout]  --> src/client.rs:7:28
[INFO] [stdout]   |
[INFO] [stdout] 7 | use tokio::io::{AsyncRead, AsyncReadExt, AsyncWrite, AsyncWriteExt};
[INFO] [stdout]   |                            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `StreamExt`
[INFO] [stdout]  --> src/cluster.rs:2:46
[INFO] [stdout]   |
[INFO] [stdout] 2 | use futures::{future, Sink, SinkExt, Stream, StreamExt, TryFutureExt};
[INFO] [stdout]   |                                              ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 23 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling canal-rs v0.1.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `info`, `trace`, `warn`
[INFO] [stdout]  --> src/client.rs:2:11
[INFO] [stdout]   |
[INFO] [stdout] 2 | use log::{info, trace, warn};
[INFO] [stdout]   |           ^^^^  ^^^^^  ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::error::Error`
[INFO] [stdout]  --> src/client.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::error::Error;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::time::Duration`
[INFO] [stdout]  --> src/client.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::time::Duration;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AsyncRead`, `AsyncWriteExt`, `AsyncWrite`
[INFO] [stdout]  --> src/client.rs:7:17
[INFO] [stdout]   |
[INFO] [stdout] 7 | use tokio::io::{AsyncRead, AsyncReadExt, AsyncWrite, AsyncWriteExt};
[INFO] [stdout]   |                 ^^^^^^^^^                ^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BytesMut`
[INFO] [stdout]  --> src/client.rs:9:20
[INFO] [stdout]   |
[INFO] [stdout] 9 | use bytes::{Bytes, BytesMut};
[INFO] [stdout]   |                    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Sink`, `Stream`, `future`
[INFO] [stdout]   --> src/client.rs:11:15
[INFO] [stdout]    |
[INFO] [stdout] 11 | use futures::{future, Sink, SinkExt, Stream, StreamExt};
[INFO] [stdout]    |               ^^^^^^  ^^^^           ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Fail`, `err_msg`
[INFO] [stdout]   --> src/client.rs:12:38
[INFO] [stdout]    |
[INFO] [stdout] 12 | use failure::{Error as FailureError, Fail, err_msg};
[INFO] [stdout]    |                                      ^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `parse_from_bytes`
[INFO] [stdout]   --> src/client.rs:27:25
[INFO] [stdout]    |
[INFO] [stdout] 27 | use protobuf::{Message, parse_from_bytes};
[INFO] [stdout]    |                         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Watch`, `ZkError`, `ZkResult`
[INFO] [stdout]  --> src/cluster.rs:1:17
[INFO] [stdout]   |
[INFO] [stdout] 1 | use zookeeper::{ZkResult, ZooKeeper, Watch, WatchedEvent, Watcher, ZkError};
[INFO] [stdout]   |                 ^^^^^^^^             ^^^^^                         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `SinkExt`, `Sink`, `Stream`, `future`
[INFO] [stdout]  --> src/cluster.rs:2:15
[INFO] [stdout]   |
[INFO] [stdout] 2 | use futures::{future, Sink, SinkExt, Stream, StreamExt, TryFutureExt};
[INFO] [stdout]   |               ^^^^^^  ^^^^  ^^^^^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Fail`
[INFO] [stdout]  --> src/cluster.rs:3:38
[INFO] [stdout]   |
[INFO] [stdout] 3 | use failure::{Error as FailureError, Fail};
[INFO] [stdout]   |                                      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Receiver`, `Sender`, `self`
[INFO] [stdout]  --> src/cluster.rs:4:28
[INFO] [stdout]   |
[INFO] [stdout] 4 | use tokio::sync::oneshot::{self, Receiver, Sender};
[INFO] [stdout]   |                            ^^^^  ^^^^^^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::task`
[INFO] [stdout]  --> src/cluster.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use tokio::task;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::runtime::Runtime`
[INFO] [stdout]  --> src/cluster.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use tokio::runtime::Runtime;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Deserialize`, `Serialize`
[INFO] [stdout]  --> src/cluster.rs:7:13
[INFO] [stdout]   |
[INFO] [stdout] 7 | use serde::{Serialize, Deserialize};
[INFO] [stdout]   |             ^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Deserializer`, `Serializer`
[INFO] [stdout]  --> src/cluster.rs:8:18
[INFO] [stdout]   |
[INFO] [stdout] 8 | use serde_json::{Serializer, Deserializer};
[INFO] [stdout]   |                  ^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::str::FromStr`
[INFO] [stdout]   --> src/cluster.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use std::str::FromStr;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::net::SocketAddr`
[INFO] [stdout]   --> src/cluster.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use std::net::SocketAddr;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `protobuf::parse_from_bytes`: Use Message::parse_from_bytes instead
[INFO] [stdout]   --> src/client.rs:27:25
[INFO] [stdout]    |
[INFO] [stdout] 27 | use protobuf::{Message, parse_from_bytes};
[INFO] [stdout]    |                         ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `active_path`
[INFO] [stdout]    --> src/cluster.rs:110:21
[INFO] [stdout]     |
[INFO] [stdout] 110 |                 let active_path = format!("/otter/canal/destinations/{}/running", destinations.clone());
[INFO] [stdout]     |                     ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_active_path`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `TryFutureExt`
[INFO] [stdout]  --> src/cluster.rs:2:57
[INFO] [stdout]   |
[INFO] [stdout] 2 | use futures::{future, Sink, SinkExt, Stream, StreamExt, TryFutureExt};
[INFO] [stdout]   |                                                         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AsyncReadExt`
[INFO] [stdout]  --> src/client.rs:7:28
[INFO] [stdout]   |
[INFO] [stdout] 7 | use tokio::io::{AsyncRead, AsyncReadExt, AsyncWrite, AsyncWriteExt};
[INFO] [stdout]   |                            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `StreamExt`
[INFO] [stdout]  --> src/cluster.rs:2:46
[INFO] [stdout]   |
[INFO] [stdout] 2 | use futures::{future, Sink, SinkExt, Stream, StreamExt, TryFutureExt};
[INFO] [stdout]   |                                              ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 23 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 0.91s
[INFO] running `Command { std: "docker" "inspect" "6686012a1164b32d568c2db4af6af028bd5f8440521531714a6e8c226301f618", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "6686012a1164b32d568c2db4af6af028bd5f8440521531714a6e8c226301f618", kill_on_drop: false }`
[INFO] [stdout] 6686012a1164b32d568c2db4af6af028bd5f8440521531714a6e8c226301f618
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+1.76.0" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 6a7b92ef193aa4c2453cbad00449d889c98f55407d1b9b25f8f9afbdf69d51e9
[INFO] running `Command { std: "docker" "start" "-a" "6a7b92ef193aa4c2453cbad00449d889c98f55407d1b9b25f8f9afbdf69d51e9", kill_on_drop: false }`
[INFO] [stderr] warning: unused imports: `info`, `trace`, `warn`
[INFO] [stderr]  --> src/client.rs:2:11
[INFO] [stderr]   |
[INFO] [stderr] 2 | use log::{info, trace, warn};
[INFO] [stderr]   |           ^^^^  ^^^^^  ^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::error::Error`
[INFO] [stderr]  --> src/client.rs:3:5
[INFO] [stderr]   |
[INFO] [stderr] 3 | use std::error::Error;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::time::Duration`
[INFO] [stderr]  --> src/client.rs:4:5
[INFO] [stderr]   |
[INFO] [stderr] 4 | use std::time::Duration;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `AsyncRead`, `AsyncWriteExt`, `AsyncWrite`
[INFO] [stderr]  --> src/client.rs:7:17
[INFO] [stderr]   |
[INFO] [stderr] 7 | use tokio::io::{AsyncRead, AsyncReadExt, AsyncWrite, AsyncWriteExt};
[INFO] [stderr]   |                 ^^^^^^^^^                ^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `BytesMut`
[INFO] [stderr]  --> src/client.rs:9:20
[INFO] [stderr]   |
[INFO] [stderr] 9 | use bytes::{Bytes, BytesMut};
[INFO] [stderr]   |                    ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Sink`, `Stream`, `future`
[INFO] [stderr]   --> src/client.rs:11:15
[INFO] [stderr]    |
[INFO] [stderr] 11 | use futures::{future, Sink, SinkExt, Stream, StreamExt};
[INFO] [stderr]    |               ^^^^^^  ^^^^           ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Fail`, `err_msg`
[INFO] [stderr]   --> src/client.rs:12:38
[INFO] [stderr]    |
[INFO] [stderr] 12 | use failure::{Error as FailureError, Fail, err_msg};
[INFO] [stderr]    |                                      ^^^^  ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `parse_from_bytes`
[INFO] [stderr]   --> src/client.rs:27:25
[INFO] [stderr]    |
[INFO] [stderr] 27 | use protobuf::{Message, parse_from_bytes};
[INFO] [stderr]    |                         ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Watch`, `ZkError`, `ZkResult`
[INFO] [stderr]  --> src/cluster.rs:1:17
[INFO] [stderr]   |
[INFO] [stderr] 1 | use zookeeper::{ZkResult, ZooKeeper, Watch, WatchedEvent, Watcher, ZkError};
[INFO] [stderr]   |                 ^^^^^^^^             ^^^^^                         ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `SinkExt`, `Sink`, `Stream`, `future`
[INFO] [stderr]  --> src/cluster.rs:2:15
[INFO] [stderr]   |
[INFO] [stderr] 2 | use futures::{future, Sink, SinkExt, Stream, StreamExt, TryFutureExt};
[INFO] [stderr]   |               ^^^^^^  ^^^^  ^^^^^^^  ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Fail`
[INFO] [stderr]  --> src/cluster.rs:3:38
[INFO] [stderr]   |
[INFO] [stderr] 3 | use failure::{Error as FailureError, Fail};
[INFO] [stderr]   |                                      ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Receiver`, `Sender`, `self`
[INFO] [stderr]  --> src/cluster.rs:4:28
[INFO] [stderr]   |
[INFO] [stderr] 4 | use tokio::sync::oneshot::{self, Receiver, Sender};
[INFO] [stderr]   |                            ^^^^  ^^^^^^^^  ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `tokio::task`
[INFO] [stderr]  --> src/cluster.rs:5:5
[INFO] [stderr]   |
[INFO] [stderr] 5 | use tokio::task;
[INFO] [stderr]   |     ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `tokio::runtime::Runtime`
[INFO] [stderr]  --> src/cluster.rs:6:5
[INFO] [stderr]   |
[INFO] [stderr] 6 | use tokio::runtime::Runtime;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Deserialize`, `Serialize`
[INFO] [stderr]  --> src/cluster.rs:7:13
[INFO] [stderr]   |
[INFO] [stderr] 7 | use serde::{Serialize, Deserialize};
[INFO] [stderr]   |             ^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Deserializer`, `Serializer`
[INFO] [stderr]  --> src/cluster.rs:8:18
[INFO] [stderr]   |
[INFO] [stderr] 8 | use serde_json::{Serializer, Deserializer};
[INFO] [stderr]   |                  ^^^^^^^^^^  ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::str::FromStr`
[INFO] [stderr]   --> src/cluster.rs:12:5
[INFO] [stderr]    |
[INFO] [stderr] 12 | use std::str::FromStr;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::net::SocketAddr`
[INFO] [stderr]   --> src/cluster.rs:13:5
[INFO] [stderr]    |
[INFO] [stderr] 13 | use std::net::SocketAddr;
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated function `protobuf::parse_from_bytes`: Use Message::parse_from_bytes instead
[INFO] [stderr]   --> src/client.rs:27:25
[INFO] [stderr]    |
[INFO] [stderr] 27 | use protobuf::{Message, parse_from_bytes};
[INFO] [stderr]    |                         ^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(deprecated)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `active_path`
[INFO] [stderr]    --> src/cluster.rs:110:21
[INFO] [stderr]     |
[INFO] [stderr] 110 |                 let active_path = format!("/otter/canal/destinations/{}/running", destinations.clone());
[INFO] [stderr]     |                     ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_active_path`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `TryFutureExt`
[INFO] [stderr]  --> src/cluster.rs:2:57
[INFO] [stderr]   |
[INFO] [stderr] 2 | use futures::{future, Sink, SinkExt, Stream, StreamExt, TryFutureExt};
[INFO] [stderr]   |                                                         ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `AsyncReadExt`
[INFO] [stderr]  --> src/client.rs:7:28
[INFO] [stderr]   |
[INFO] [stderr] 7 | use tokio::io::{AsyncRead, AsyncReadExt, AsyncWrite, AsyncWriteExt};
[INFO] [stderr]   |                            ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `StreamExt`
[INFO] [stderr]  --> src/cluster.rs:2:46
[INFO] [stderr]   |
[INFO] [stderr] 2 | use futures::{future, Sink, SinkExt, Stream, StreamExt, TryFutureExt};
[INFO] [stderr]   |                                              ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `canal-rs` (lib) generated 23 warnings (run `cargo fix --lib -p canal-rs` to apply 19 suggestions)
[INFO] [stderr] warning: `canal-rs` (lib test) generated 23 warnings (23 duplicates)
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 0.05s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/canal_rs-19606c4eb20aab0e)
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test tests::it_works ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests canal-rs
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "6a7b92ef193aa4c2453cbad00449d889c98f55407d1b9b25f8f9afbdf69d51e9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "6a7b92ef193aa4c2453cbad00449d889c98f55407d1b9b25f8f9afbdf69d51e9", kill_on_drop: false }`
[INFO] [stdout] 6a7b92ef193aa4c2453cbad00449d889c98f55407d1b9b25f8f9afbdf69d51e9
