[INFO] cloning repository https://github.com/et4te/swim
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/et4te/swim" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fet4te%2Fswim", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fet4te%2Fswim'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] d3c9b088fc9bbcd921484a755feddf6b36fa9966
[INFO] checking et4te/swim against master#5518eaa946291f00471af8b254b2a1715f234882 for pr-120393
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fet4te%2Fswim" "/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/et4te/swim on toolchain 5518eaa946291f00471af8b254b2a1715f234882
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+5518eaa946291f00471af8b254b2a1715f234882" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/et4te/swim
[INFO] finished tweaking git repo https://github.com/et4te/swim
[INFO] tweaked toml for git repo https://github.com/et4te/swim written to /workspace/builds/worker-0-tc1/source/Cargo.toml
[INFO] crate git repo https://github.com/et4te/swim 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" "+5518eaa946291f00471af8b254b2a1715f234882" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating git repository `https://github.com/crossbeam-rs/crossbeam`
[INFO] [stderr]     Updating git repository `https://github.com/tokio-rs/tokio`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded tokio-serde v0.3.0
[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" "+5518eaa946291f00471af8b254b2a1715f234882" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 7915a7a42aac712bdecda814e7d1de3bbf78b40606fa5f4e4aa9aa247697d8bb
[INFO] running `Command { std: "docker" "start" "-a" "7915a7a42aac712bdecda814e7d1de3bbf78b40606fa5f4e4aa9aa247697d8bb", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "7915a7a42aac712bdecda814e7d1de3bbf78b40606fa5f4e4aa9aa247697d8bb", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "7915a7a42aac712bdecda814e7d1de3bbf78b40606fa5f4e4aa9aa247697d8bb", kill_on_drop: false }`
[INFO] [stdout] 7915a7a42aac712bdecda814e7d1de3bbf78b40606fa5f4e4aa9aa247697d8bb
[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=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+5518eaa946291f00471af8b254b2a1715f234882" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] b951d09980aa09578f4f42bb9b3afe8ce2f607cf0635ca020eabf92de8769256
[INFO] running `Command { std: "docker" "start" "-a" "b951d09980aa09578f4f42bb9b3afe8ce2f607cf0635ca020eabf92de8769256", kill_on_drop: false }`
[INFO] [stderr]     Checking libc v0.2.43
[INFO] [stderr]     Checking cfg-if v0.1.6
[INFO] [stderr]     Checking lazy_static v1.2.0
[INFO] [stderr]     Checking scopeguard v0.3.3
[INFO] [stderr]    Compiling semver-parser v0.7.0
[INFO] [stderr]     Checking rand_core v0.3.0
[INFO] [stderr]     Checking futures v0.1.25
[INFO] [stderr]     Checking nodrop v0.1.13
[INFO] [stderr]     Checking log v0.4.6
[INFO] [stderr]     Checking void v1.0.2
[INFO] [stderr]     Checking byteorder v1.2.7
[INFO] [stderr]     Checking arrayvec v0.4.7
[INFO] [stderr]     Checking unreachable v1.0.0
[INFO] [stderr]     Checking crossbeam-utils v0.6.1
[INFO] [stderr]     Checking rand_core v0.2.2
[INFO] [stderr]    Compiling semver v0.9.0
[INFO] [stderr]     Checking memoffset v0.2.1
[INFO] [stderr]     Checking stable_deref_trait v1.1.1
[INFO] [stderr]     Checking smallvec v0.6.5
[INFO] [stderr]     Checking slab v0.4.1
[INFO] [stderr]     Checking owning_ref v0.3.3
[INFO] [stderr]     Checking lazycell v1.2.0
[INFO] [stderr]    Compiling version_check v0.1.5
[INFO] [stderr]    Compiling rustc_version v0.2.3
[INFO] [stderr]     Checking crossbeam-utils v0.6.1 (https://github.com/crossbeam-rs/crossbeam#d627067b)
[INFO] [stderr]     Checking lock_api v0.1.4
[INFO] [stderr]     Checking iovec v0.1.2
[INFO] [stderr]     Checking rand v0.5.5
[INFO] [stderr]     Checking num_cpus v1.8.0
[INFO] [stderr]     Checking bytes v0.4.10
[INFO] [stderr]     Checking net2 v0.2.33
[INFO] [stderr]    Compiling parking_lot_core v0.3.1
[INFO] [stderr]    Compiling proc-macro2 v0.4.24
[INFO] [stderr]    Compiling memchr v2.1.1
[INFO] [stderr]    Compiling num-traits v0.2.6
[INFO] [stderr]     Checking mio v0.6.16
[INFO] [stderr]     Checking crossbeam-epoch v0.6.1 (https://github.com/crossbeam-rs/crossbeam#d627067b)
[INFO] [stderr]     Checking crossbeam-epoch v0.6.1
[INFO] [stderr]    Compiling num-integer v0.1.39
[INFO] [stderr]     Checking ucd-util v0.1.3
[INFO] [stderr]    Compiling unicode-xid v0.1.0
[INFO] [stderr]    Compiling regex v1.0.6
[INFO] [stderr]     Checking crossbeam-deque v0.6.2
[INFO] [stderr]     Checking aho-corasick v0.6.9
[INFO] [stderr]     Checking tokio-executor v0.1.5 (https://github.com/tokio-rs/tokio#09f2ac85)
[INFO] [stderr]     Checking tokio-io v0.1.10 (https://github.com/tokio-rs/tokio#09f2ac85)
[INFO] [stderr]     Checking regex-syntax v0.6.3
[INFO] [stderr]     Checking atty v0.2.11
[INFO] [stderr]     Checking thread_local v0.3.6
[INFO] [stderr]     Checking quick-error v1.2.2
[INFO] [stderr]     Checking parking_lot v0.6.4
[INFO] [stderr]    Compiling serde v1.0.80
[INFO] [stderr]     Checking utf8-ranges v1.0.2
[INFO] [stderr]    Compiling quote v0.6.10
[INFO] [stderr]     Checking humantime v1.1.1
[INFO] [stderr]     Checking tokio-codec v0.1.1 (https://github.com/tokio-rs/tokio#09f2ac85)
[INFO] [stderr]     Checking tokio-reactor v0.1.6 (https://github.com/tokio-rs/tokio#09f2ac85)
[INFO] [stderr]     Checking tokio-threadpool v0.1.8 (https://github.com/tokio-rs/tokio#09f2ac85)
[INFO] [stderr]     Checking mio-uds v0.6.7
[INFO] [stderr]     Checking time v0.1.40
[INFO] [stderr]     Checking unicode-width v0.1.5
[INFO] [stderr]     Checking termcolor v1.0.4
[INFO] [stderr]     Checking ansi_term v0.11.0
[INFO] [stderr]     Checking tokio-uds v0.2.3 (https://github.com/tokio-rs/tokio#09f2ac85)
[INFO] [stderr]     Checking textwrap v0.10.0
[INFO] [stderr]     Checking tokio-udp v0.1.2 (https://github.com/tokio-rs/tokio#09f2ac85)
[INFO] [stderr]     Checking tokio-tcp v0.1.2 (https://github.com/tokio-rs/tokio#09f2ac85)
[INFO] [stderr]    Compiling syn v0.15.21
[INFO] [stderr]     Checking crossbeam-channel v0.3.2 (https://github.com/crossbeam-rs/crossbeam#d627067b)
[INFO] [stderr]     Checking tokio-current-thread v0.1.3 (https://github.com/tokio-rs/tokio#09f2ac85)
[INFO] [stderr]     Checking tokio-fs v0.1.4 (https://github.com/tokio-rs/tokio#09f2ac85)
[INFO] [stderr]     Checking tokio-timer v0.2.7 (https://github.com/tokio-rs/tokio#09f2ac85)
[INFO] [stderr]     Checking chrono v0.4.6
[INFO] [stderr]     Checking crossbeam-deque v0.6.2 (https://github.com/crossbeam-rs/crossbeam#d627067b)
[INFO] [stderr]     Checking vec_map v0.8.1
[INFO] [stderr]     Checking bitflags v1.0.4
[INFO] [stderr]     Checking strsim v0.7.0
[INFO] [stderr]     Checking crossbeam v0.5.0 (https://github.com/crossbeam-rs/crossbeam#d627067b)
[INFO] [stderr]     Checking tokio v0.1.12 (https://github.com/tokio-rs/tokio#09f2ac85)
[INFO] [stderr]     Checking tokio-serde v0.3.0
[INFO] [stderr]     Checking crossbeam-skiplist v0.0.0 (https://github.com/crossbeam-rs/crossbeam#d627067b)
[INFO] [stderr]     Checking clap v2.32.0
[INFO] [stderr]     Checking colored v1.6.1
[INFO] [stderr]     Checking env_logger v0.5.13
[INFO] [stderr]    Compiling serde_derive v1.0.80
[INFO] [stderr]     Checking pretty_env_logger v0.2.5
[INFO] [stderr]     Checking bincode v1.0.1
[INFO] [stderr]     Checking swim v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: field `indegree` is never read
[INFO] [stdout]  --> src/digraph.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | struct Digraph {
[INFO] [stdout]   |        ------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 7 |     indegree: Vec<u32>, // indegree[v] = indegree of vertex v
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]   --> src/digraph.rs:26:12
[INFO] [stdout]    |
[INFO] [stdout] 24 | impl Digraph {
[INFO] [stdout]    | ------------ associated items in this implementation
[INFO] [stdout] 25 |
[INFO] [stdout] 26 |     pub fn new(v: u32) -> Digraph {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 41 |     fn validate_vertex(&self, v: u32) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 47 |     pub fn add_edge(&mut self, v: u32, w: u32) {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 55 |     pub fn adj(&self, v: u32) -> Vec<u32> {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 60 |     pub fn outdegree(&self, v: u32) -> usize {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 65 |     pub fn indegree(&self, v: u32) -> u32 {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 70 |     pub fn reverse(&self) -> Digraph {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `A` is never used
[INFO] [stdout]   --> src/protocol/slush.rs:13:7
[INFO] [stdout]    |
[INFO] [stdout] 13 | const A: f32 = 0.5;
[INFO] [stdout]    |       ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `K` is never used
[INFO] [stdout]   --> src/protocol/slush.rs:15:7
[INFO] [stdout]    |
[INFO] [stdout] 15 | const K: usize = 4;
[INFO] [stdout]    |       ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `set_col`, `send_query`, `handle_query`, and `run` are never used
[INFO] [stdout]   --> src/protocol/slush.rs:25:12
[INFO] [stdout]    |
[INFO] [stdout] 23 | impl Slush {
[INFO] [stdout]    | ---------- associated items in this implementation
[INFO] [stdout] 24 |
[INFO] [stdout] 25 |     pub fn new(addr: NetAddr) -> Slush {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 46 |     pub fn set_col(&mut self, col: Colour) {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 50 |     pub fn send_query(&self, tx: ColourTx, peer_addr: NetAddr) {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 66 |     pub fn handle_query(&mut self, tx: ResponseTx, col: Colour) {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 75 |     pub fn run(&mut self, tx: &ColourTx, rx: &mut ColourRx, membership: &Membership) {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `outcome` is never used
[INFO] [stdout]    --> src/protocol/slush.rs:112:8
[INFO] [stdout]     |
[INFO] [stdout] 112 | pub fn outcome(votes: Vec<Colour>) -> (u32, u32) {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `A` is never used
[INFO] [stdout]   --> src/protocol/snowflake.rs:12:7
[INFO] [stdout]    |
[INFO] [stdout] 12 | const A: f32 = 0.5;
[INFO] [stdout]    |       ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `B` is never used
[INFO] [stdout]   --> src/protocol/snowflake.rs:13:7
[INFO] [stdout]    |
[INFO] [stdout] 13 | const B: u32 = 11;
[INFO] [stdout]    |       ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `K` is never used
[INFO] [stdout]   --> src/protocol/snowflake.rs:14:7
[INFO] [stdout]    |
[INFO] [stdout] 14 | const K: usize = 4;
[INFO] [stdout]    |       ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Snowflake` is never constructed
[INFO] [stdout]   --> src/protocol/snowflake.rs:16:12
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub struct Snowflake {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `set_col`, `set_cnt`, `send_query`, `handle_query`, and `run` are never used
[INFO] [stdout]   --> src/protocol/snowflake.rs:24:12
[INFO] [stdout]    |
[INFO] [stdout] 22 | impl Snowflake {
[INFO] [stdout]    | -------------- associated items in this implementation
[INFO] [stdout] 23 |
[INFO] [stdout] 24 |     pub fn new(addr: NetAddr) -> Snowflake {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 48 |     pub fn set_col(&mut self, col: Colour) {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 52 |     pub fn set_cnt(&mut self, cnt: u32) {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 56 |     pub fn send_query(&self, tx: ColourTx, peer_addr: NetAddr) {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 72 |     pub fn handle_query(&mut self, tx: ResponseTx, col: Colour) {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 81 |     pub fn run(&mut self, tx: &ColourTx, rx: &mut ColourRx, membership: &Membership) -> bool {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `outcome` is never used
[INFO] [stdout]    --> src/protocol/snowflake.rs:139:8
[INFO] [stdout]     |
[INFO] [stdout] 139 | pub fn outcome(votes: Vec<Colour>) -> (u32, u32) {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `delay` is never read
[INFO] [stdout]   --> src/swim.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub struct Swim {
[INFO] [stdout]    |            ---- field in this struct
[INFO] [stdout] 18 |     pub addr: NetAddr,
[INFO] [stdout] 19 |     delay: Option<u64>,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Swim` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `adj`, `outdegree`, `indegree`, and `reverse` are never used
[INFO] [stdout]   --> src/digraph.rs:55:12
[INFO] [stdout]    |
[INFO] [stdout] 24 | impl Digraph {
[INFO] [stdout]    | ------------ methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 55 |     pub fn adj(&self, v: u32) -> Vec<u32> {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 60 |     pub fn outdegree(&self, v: u32) -> usize {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 65 |     pub fn indegree(&self, v: u32) -> u32 {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 70 |     pub fn reverse(&self) -> Digraph {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `A` is never used
[INFO] [stdout]   --> src/protocol/slush.rs:13:7
[INFO] [stdout]    |
[INFO] [stdout] 13 | const A: f32 = 0.5;
[INFO] [stdout]    |       ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `K` is never used
[INFO] [stdout]   --> src/protocol/slush.rs:15:7
[INFO] [stdout]    |
[INFO] [stdout] 15 | const K: usize = 4;
[INFO] [stdout]    |       ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `set_col`, `send_query`, `handle_query`, and `run` are never used
[INFO] [stdout]   --> src/protocol/slush.rs:25:12
[INFO] [stdout]    |
[INFO] [stdout] 23 | impl Slush {
[INFO] [stdout]    | ---------- associated items in this implementation
[INFO] [stdout] 24 |
[INFO] [stdout] 25 |     pub fn new(addr: NetAddr) -> Slush {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 46 |     pub fn set_col(&mut self, col: Colour) {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 50 |     pub fn send_query(&self, tx: ColourTx, peer_addr: NetAddr) {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 66 |     pub fn handle_query(&mut self, tx: ResponseTx, col: Colour) {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 75 |     pub fn run(&mut self, tx: &ColourTx, rx: &mut ColourRx, membership: &Membership) {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `outcome` is never used
[INFO] [stdout]    --> src/protocol/slush.rs:112:8
[INFO] [stdout]     |
[INFO] [stdout] 112 | pub fn outcome(votes: Vec<Colour>) -> (u32, u32) {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `A` is never used
[INFO] [stdout]   --> src/protocol/snowflake.rs:12:7
[INFO] [stdout]    |
[INFO] [stdout] 12 | const A: f32 = 0.5;
[INFO] [stdout]    |       ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `B` is never used
[INFO] [stdout]   --> src/protocol/snowflake.rs:13:7
[INFO] [stdout]    |
[INFO] [stdout] 13 | const B: u32 = 11;
[INFO] [stdout]    |       ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `K` is never used
[INFO] [stdout]   --> src/protocol/snowflake.rs:14:7
[INFO] [stdout]    |
[INFO] [stdout] 14 | const K: usize = 4;
[INFO] [stdout]    |       ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Snowflake` is never constructed
[INFO] [stdout]   --> src/protocol/snowflake.rs:16:12
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub struct Snowflake {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `set_col`, `set_cnt`, `send_query`, `handle_query`, and `run` are never used
[INFO] [stdout]   --> src/protocol/snowflake.rs:24:12
[INFO] [stdout]    |
[INFO] [stdout] 22 | impl Snowflake {
[INFO] [stdout]    | -------------- associated items in this implementation
[INFO] [stdout] 23 |
[INFO] [stdout] 24 |     pub fn new(addr: NetAddr) -> Snowflake {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 48 |     pub fn set_col(&mut self, col: Colour) {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 52 |     pub fn set_cnt(&mut self, cnt: u32) {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 56 |     pub fn send_query(&self, tx: ColourTx, peer_addr: NetAddr) {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 72 |     pub fn handle_query(&mut self, tx: ResponseTx, col: Colour) {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 81 |     pub fn run(&mut self, tx: &ColourTx, rx: &mut ColourRx, membership: &Membership) -> bool {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `outcome` is never used
[INFO] [stdout]    --> src/protocol/snowflake.rs:139:8
[INFO] [stdout]     |
[INFO] [stdout] 139 | pub fn outcome(votes: Vec<Colour>) -> (u32, u32) {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `delay` is never read
[INFO] [stdout]   --> src/swim.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub struct Swim {
[INFO] [stdout]    |            ---- field in this struct
[INFO] [stdout] 18 |     pub addr: NetAddr,
[INFO] [stdout] 19 |     delay: Option<u64>,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Swim` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/digraph.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 12 |         write!(f, "{:?} vertices, {:?} edges\n", self.v(), self.e());
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout]    = note: this warning originates in the macro `write` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/digraph.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 12 |         write!(f, "{:?} vertices, {:?} edges\n", self.v(), self.e());
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout]    = note: this warning originates in the macro `write` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/digraph.rs:14:13
[INFO] [stdout]    |
[INFO] [stdout] 14 |             write!(f, "{:?}: ", v);
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]    = note: this warning originates in the macro `write` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/digraph.rs:14:13
[INFO] [stdout]    |
[INFO] [stdout] 14 |             write!(f, "{:?}: ", v);
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]    = note: this warning originates in the macro `write` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/digraph.rs:16:17
[INFO] [stdout]    |
[INFO] [stdout] 16 |                 write!(f, "{:?} ", w);
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]    = note: this warning originates in the macro `write` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/digraph.rs:16:17
[INFO] [stdout]    |
[INFO] [stdout] 16 |                 write!(f, "{:?} ", w);
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]    = note: this warning originates in the macro `write` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/digraph.rs:18:13
[INFO] [stdout]    |
[INFO] [stdout] 18 |             write!(f, "\n");
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]    = note: this warning originates in the macro `write` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/digraph.rs:18:13
[INFO] [stdout]    |
[INFO] [stdout] 18 |             write!(f, "\n");
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]    = note: this warning originates in the macro `write` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: comparison is useless due to type limits
[INFO] [stdout]   --> src/digraph.rs:42:12
[INFO] [stdout]    |
[INFO] [stdout] 42 |         if v < 0 || v >= self.v {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_comparisons)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: comparison is useless due to type limits
[INFO] [stdout]   --> src/digraph.rs:42:12
[INFO] [stdout]    |
[INFO] [stdout] 42 |         if v < 0 || v >= self.v {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_comparisons)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 18 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 17 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 4.89s
[INFO] running `Command { std: "docker" "inspect" "b951d09980aa09578f4f42bb9b3afe8ce2f607cf0635ca020eabf92de8769256", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b951d09980aa09578f4f42bb9b3afe8ce2f607cf0635ca020eabf92de8769256", kill_on_drop: false }`
[INFO] [stdout] b951d09980aa09578f4f42bb9b3afe8ce2f607cf0635ca020eabf92de8769256
[INFO] checking et4te/swim against try#7622c0f807a4e13c4db886a1681bf343795692df+rustflags=-Dnon_local_definitions for pr-120393
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fet4te%2Fswim" "/workspace/builds/worker-0-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc2/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/et4te/swim on toolchain 7622c0f807a4e13c4db886a1681bf343795692df
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+7622c0f807a4e13c4db886a1681bf343795692df" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/et4te/swim
[INFO] finished tweaking git repo https://github.com/et4te/swim
[INFO] tweaked toml for git repo https://github.com/et4te/swim written to /workspace/builds/worker-0-tc2/source/Cargo.toml
[INFO] crate git repo https://github.com/et4te/swim 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" "+7622c0f807a4e13c4db886a1681bf343795692df" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/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" "+7622c0f807a4e13c4db886a1681bf343795692df" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 261be722eb5ee8fd2aa630f0c904e69bb024398383f253eb568500c7bdf37609
[INFO] running `Command { std: "docker" "start" "-a" "261be722eb5ee8fd2aa630f0c904e69bb024398383f253eb568500c7bdf37609", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "261be722eb5ee8fd2aa630f0c904e69bb024398383f253eb568500c7bdf37609", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "261be722eb5ee8fd2aa630f0c904e69bb024398383f253eb568500c7bdf37609", kill_on_drop: false }`
[INFO] [stdout] 261be722eb5ee8fd2aa630f0c904e69bb024398383f253eb568500c7bdf37609
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -Dnon_local_definitions" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+7622c0f807a4e13c4db886a1681bf343795692df" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] f5a8a6341fd6e0863af84c3547c053a5b2338a00502c282fdc40139acad8fd35
[INFO] running `Command { std: "docker" "start" "-a" "f5a8a6341fd6e0863af84c3547c053a5b2338a00502c282fdc40139acad8fd35", kill_on_drop: false }`
[INFO] [stderr]     Checking libc v0.2.43
[INFO] [stderr]     Checking cfg-if v0.1.6
[INFO] [stderr]     Checking lazy_static v1.2.0
[INFO] [stderr]     Checking scopeguard v0.3.3
[INFO] [stderr]     Checking rand_core v0.3.0
[INFO] [stderr]    Compiling semver-parser v0.7.0
[INFO] [stderr]     Checking futures v0.1.25
[INFO] [stderr]     Checking nodrop v0.1.13
[INFO] [stderr]     Checking log v0.4.6
[INFO] [stderr]     Checking byteorder v1.2.7
[INFO] [stderr]     Checking void v1.0.2
[INFO] [stderr]     Checking crossbeam-utils v0.6.1
[INFO] [stderr]     Checking unreachable v1.0.0
[INFO] [stderr]     Checking rand_core v0.2.2
[INFO] [stderr]     Checking arrayvec v0.4.7
[INFO] [stderr]    Compiling semver v0.9.0
[INFO] [stderr]     Checking memoffset v0.2.1
[INFO] [stderr]     Checking stable_deref_trait v1.1.1
[INFO] [stderr]     Checking smallvec v0.6.5
[INFO] [stderr]     Checking slab v0.4.1
[INFO] [stderr]     Checking owning_ref v0.3.3
[INFO] [stderr]    Compiling rustc_version v0.2.3
[INFO] [stderr]     Checking lock_api v0.1.4
[INFO] [stderr]    Compiling version_check v0.1.5
[INFO] [stderr]     Checking lazycell v1.2.0
[INFO] [stderr]     Checking crossbeam-utils v0.6.1 (https://github.com/crossbeam-rs/crossbeam#d627067b)
[INFO] [stderr]     Checking iovec v0.1.2
[INFO] [stderr]     Checking rand v0.5.5
[INFO] [stderr]     Checking num_cpus v1.8.0
[INFO] [stderr]     Checking bytes v0.4.10
[INFO] [stderr]     Checking net2 v0.2.33
[INFO] [stderr]    Compiling num-traits v0.2.6
[INFO] [stderr]    Compiling proc-macro2 v0.4.24
[INFO] [stderr]    Compiling parking_lot_core v0.3.1
[INFO] [stderr]    Compiling memchr v2.1.1
[INFO] [stderr]     Checking mio v0.6.16
[INFO] [stderr]     Checking crossbeam-epoch v0.6.1 (https://github.com/crossbeam-rs/crossbeam#d627067b)
[INFO] [stderr]     Checking crossbeam-epoch v0.6.1
[INFO] [stderr]     Checking ucd-util v0.1.3
[INFO] [stderr]    Compiling unicode-xid v0.1.0
[INFO] [stderr]    Compiling regex v1.0.6
[INFO] [stderr]    Compiling num-integer v0.1.39
[INFO] [stderr]     Checking crossbeam-deque v0.6.2
[INFO] [stderr]     Checking tokio-executor v0.1.5 (https://github.com/tokio-rs/tokio#09f2ac85)
[INFO] [stderr]     Checking tokio-io v0.1.10 (https://github.com/tokio-rs/tokio#09f2ac85)
[INFO] [stderr]     Checking aho-corasick v0.6.9
[INFO] [stderr]     Checking regex-syntax v0.6.3
[INFO] [stderr]     Checking atty v0.2.11
[INFO] [stderr]     Checking thread_local v0.3.6
[INFO] [stderr]    Compiling serde v1.0.80
[INFO] [stderr]     Checking utf8-ranges v1.0.2
[INFO] [stderr]     Checking quick-error v1.2.2
[INFO] [stderr]     Checking parking_lot v0.6.4
[INFO] [stderr]     Checking humantime v1.1.1
[INFO] [stderr]    Compiling quote v0.6.10
[INFO] [stderr]     Checking tokio-codec v0.1.1 (https://github.com/tokio-rs/tokio#09f2ac85)
[INFO] [stderr]     Checking tokio-threadpool v0.1.8 (https://github.com/tokio-rs/tokio#09f2ac85)
[INFO] [stderr]     Checking tokio-reactor v0.1.6 (https://github.com/tokio-rs/tokio#09f2ac85)
[INFO] [stderr]     Checking mio-uds v0.6.7
[INFO] [stderr]     Checking time v0.1.40
[INFO] [stderr]     Checking termcolor v1.0.4
[INFO] [stderr]     Checking ansi_term v0.11.0
[INFO] [stderr]     Checking unicode-width v0.1.5
[INFO] [stderr]     Checking tokio-uds v0.2.3 (https://github.com/tokio-rs/tokio#09f2ac85)
[INFO] [stderr]     Checking tokio-udp v0.1.2 (https://github.com/tokio-rs/tokio#09f2ac85)
[INFO] [stderr]     Checking tokio-tcp v0.1.2 (https://github.com/tokio-rs/tokio#09f2ac85)
[INFO] [stderr]     Checking textwrap v0.10.0
[INFO] [stderr]     Checking tokio-fs v0.1.4 (https://github.com/tokio-rs/tokio#09f2ac85)
[INFO] [stderr]     Checking crossbeam-channel v0.3.2 (https://github.com/crossbeam-rs/crossbeam#d627067b)
[INFO] [stderr]    Compiling syn v0.15.21
[INFO] [stderr]     Checking tokio-current-thread v0.1.3 (https://github.com/tokio-rs/tokio#09f2ac85)
[INFO] [stderr]     Checking tokio-timer v0.2.7 (https://github.com/tokio-rs/tokio#09f2ac85)
[INFO] [stderr]     Checking chrono v0.4.6
[INFO] [stderr]     Checking crossbeam-deque v0.6.2 (https://github.com/crossbeam-rs/crossbeam#d627067b)
[INFO] [stderr]     Checking vec_map v0.8.1
[INFO] [stderr]     Checking bitflags v1.0.4
[INFO] [stderr]     Checking strsim v0.7.0
[INFO] [stderr]     Checking tokio-serde v0.3.0
[INFO] [stderr]     Checking tokio v0.1.12 (https://github.com/tokio-rs/tokio#09f2ac85)
[INFO] [stderr]     Checking crossbeam v0.5.0 (https://github.com/crossbeam-rs/crossbeam#d627067b)
[INFO] [stderr]     Checking clap v2.32.0
[INFO] [stderr]     Checking crossbeam-skiplist v0.0.0 (https://github.com/crossbeam-rs/crossbeam#d627067b)
[INFO] [stderr]     Checking colored v1.6.1
[INFO] [stderr]     Checking env_logger v0.5.13
[INFO] [stderr]     Checking pretty_env_logger v0.2.5
[INFO] [stderr]    Compiling serde_derive v1.0.80
[INFO] [stderr]     Checking bincode v1.0.1
[INFO] [stderr]     Checking swim v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: methods `adj`, `outdegree`, `indegree`, and `reverse` are never used
[INFO] [stdout]   --> src/digraph.rs:55:12
[INFO] [stdout]    |
[INFO] [stdout] 24 | impl Digraph {
[INFO] [stdout]    | ------------ methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 55 |     pub fn adj(&self, v: u32) -> Vec<u32> {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 60 |     pub fn outdegree(&self, v: u32) -> usize {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 65 |     pub fn indegree(&self, v: u32) -> u32 {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 70 |     pub fn reverse(&self) -> Digraph {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `A` is never used
[INFO] [stdout]   --> src/protocol/slush.rs:13:7
[INFO] [stdout]    |
[INFO] [stdout] 13 | const A: f32 = 0.5;
[INFO] [stdout]    |       ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `K` is never used
[INFO] [stdout]   --> src/protocol/slush.rs:15:7
[INFO] [stdout]    |
[INFO] [stdout] 15 | const K: usize = 4;
[INFO] [stdout]    |       ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `set_col`, `send_query`, `handle_query`, and `run` are never used
[INFO] [stdout]   --> src/protocol/slush.rs:25:12
[INFO] [stdout]    |
[INFO] [stdout] 23 | impl Slush {
[INFO] [stdout]    | ---------- associated items in this implementation
[INFO] [stdout] 24 |
[INFO] [stdout] 25 |     pub fn new(addr: NetAddr) -> Slush {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 46 |     pub fn set_col(&mut self, col: Colour) {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 50 |     pub fn send_query(&self, tx: ColourTx, peer_addr: NetAddr) {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 66 |     pub fn handle_query(&mut self, tx: ResponseTx, col: Colour) {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 75 |     pub fn run(&mut self, tx: &ColourTx, rx: &mut ColourRx, membership: &Membership) {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `outcome` is never used
[INFO] [stdout]    --> src/protocol/slush.rs:112:8
[INFO] [stdout]     |
[INFO] [stdout] 112 | pub fn outcome(votes: Vec<Colour>) -> (u32, u32) {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `A` is never used
[INFO] [stdout]   --> src/protocol/snowflake.rs:12:7
[INFO] [stdout]    |
[INFO] [stdout] 12 | const A: f32 = 0.5;
[INFO] [stdout]    |       ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `B` is never used
[INFO] [stdout]   --> src/protocol/snowflake.rs:13:7
[INFO] [stdout]    |
[INFO] [stdout] 13 | const B: u32 = 11;
[INFO] [stdout]    |       ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `K` is never used
[INFO] [stdout]   --> src/protocol/snowflake.rs:14:7
[INFO] [stdout]    |
[INFO] [stdout] 14 | const K: usize = 4;
[INFO] [stdout]    |       ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Snowflake` is never constructed
[INFO] [stdout]   --> src/protocol/snowflake.rs:16:12
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub struct Snowflake {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `set_col`, `set_cnt`, `send_query`, `handle_query`, and `run` are never used
[INFO] [stdout]   --> src/protocol/snowflake.rs:24:12
[INFO] [stdout]    |
[INFO] [stdout] 22 | impl Snowflake {
[INFO] [stdout]    | -------------- associated items in this implementation
[INFO] [stdout] 23 |
[INFO] [stdout] 24 |     pub fn new(addr: NetAddr) -> Snowflake {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 48 |     pub fn set_col(&mut self, col: Colour) {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 52 |     pub fn set_cnt(&mut self, cnt: u32) {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 56 |     pub fn send_query(&self, tx: ColourTx, peer_addr: NetAddr) {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 72 |     pub fn handle_query(&mut self, tx: ResponseTx, col: Colour) {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 81 |     pub fn run(&mut self, tx: &ColourTx, rx: &mut ColourRx, membership: &Membership) -> bool {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `outcome` is never used
[INFO] [stdout]    --> src/protocol/snowflake.rs:139:8
[INFO] [stdout]     |
[INFO] [stdout] 139 | pub fn outcome(votes: Vec<Colour>) -> (u32, u32) {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `delay` is never read
[INFO] [stdout]   --> src/swim.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub struct Swim {
[INFO] [stdout]    |            ---- field in this struct
[INFO] [stdout] 18 |     pub addr: NetAddr,
[INFO] [stdout] 19 |     delay: Option<u64>,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Swim` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `indegree` is never read
[INFO] [stdout]  --> src/digraph.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | struct Digraph {
[INFO] [stdout]   |        ------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 7 |     indegree: Vec<u32>, // indegree[v] = indegree of vertex v
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]   --> src/digraph.rs:26:12
[INFO] [stdout]    |
[INFO] [stdout] 24 | impl Digraph {
[INFO] [stdout]    | ------------ associated items in this implementation
[INFO] [stdout] 25 |
[INFO] [stdout] 26 |     pub fn new(v: u32) -> Digraph {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 41 |     fn validate_vertex(&self, v: u32) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 47 |     pub fn add_edge(&mut self, v: u32, w: u32) {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 55 |     pub fn adj(&self, v: u32) -> Vec<u32> {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 60 |     pub fn outdegree(&self, v: u32) -> usize {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 65 |     pub fn indegree(&self, v: u32) -> u32 {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 70 |     pub fn reverse(&self) -> Digraph {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `A` is never used
[INFO] [stdout]   --> src/protocol/slush.rs:13:7
[INFO] [stdout]    |
[INFO] [stdout] 13 | const A: f32 = 0.5;
[INFO] [stdout]    |       ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `K` is never used
[INFO] [stdout]   --> src/protocol/slush.rs:15:7
[INFO] [stdout]    |
[INFO] [stdout] 15 | const K: usize = 4;
[INFO] [stdout]    |       ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `set_col`, `send_query`, `handle_query`, and `run` are never used
[INFO] [stdout]   --> src/protocol/slush.rs:25:12
[INFO] [stdout]    |
[INFO] [stdout] 23 | impl Slush {
[INFO] [stdout]    | ---------- associated items in this implementation
[INFO] [stdout] 24 |
[INFO] [stdout] 25 |     pub fn new(addr: NetAddr) -> Slush {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 46 |     pub fn set_col(&mut self, col: Colour) {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 50 |     pub fn send_query(&self, tx: ColourTx, peer_addr: NetAddr) {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 66 |     pub fn handle_query(&mut self, tx: ResponseTx, col: Colour) {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 75 |     pub fn run(&mut self, tx: &ColourTx, rx: &mut ColourRx, membership: &Membership) {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `outcome` is never used
[INFO] [stdout]    --> src/protocol/slush.rs:112:8
[INFO] [stdout]     |
[INFO] [stdout] 112 | pub fn outcome(votes: Vec<Colour>) -> (u32, u32) {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `A` is never used
[INFO] [stdout]   --> src/protocol/snowflake.rs:12:7
[INFO] [stdout]    |
[INFO] [stdout] 12 | const A: f32 = 0.5;
[INFO] [stdout]    |       ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `B` is never used
[INFO] [stdout]   --> src/protocol/snowflake.rs:13:7
[INFO] [stdout]    |
[INFO] [stdout] 13 | const B: u32 = 11;
[INFO] [stdout]    |       ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `K` is never used
[INFO] [stdout]   --> src/protocol/snowflake.rs:14:7
[INFO] [stdout]    |
[INFO] [stdout] 14 | const K: usize = 4;
[INFO] [stdout]    |       ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Snowflake` is never constructed
[INFO] [stdout]   --> src/protocol/snowflake.rs:16:12
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub struct Snowflake {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `set_col`, `set_cnt`, `send_query`, `handle_query`, and `run` are never used
[INFO] [stdout]   --> src/protocol/snowflake.rs:24:12
[INFO] [stdout]    |
[INFO] [stdout] 22 | impl Snowflake {
[INFO] [stdout]    | -------------- associated items in this implementation
[INFO] [stdout] 23 |
[INFO] [stdout] 24 |     pub fn new(addr: NetAddr) -> Snowflake {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 48 |     pub fn set_col(&mut self, col: Colour) {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 52 |     pub fn set_cnt(&mut self, cnt: u32) {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 56 |     pub fn send_query(&self, tx: ColourTx, peer_addr: NetAddr) {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 72 |     pub fn handle_query(&mut self, tx: ResponseTx, col: Colour) {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 81 |     pub fn run(&mut self, tx: &ColourTx, rx: &mut ColourRx, membership: &Membership) -> bool {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `outcome` is never used
[INFO] [stdout]    --> src/protocol/snowflake.rs:139:8
[INFO] [stdout]     |
[INFO] [stdout] 139 | pub fn outcome(votes: Vec<Colour>) -> (u32, u32) {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `delay` is never read
[INFO] [stdout]   --> src/swim.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub struct Swim {
[INFO] [stdout]    |            ---- field in this struct
[INFO] [stdout] 18 |     pub addr: NetAddr,
[INFO] [stdout] 19 |     delay: Option<u64>,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Swim` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/digraph.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 12 |         write!(f, "{:?} vertices, {:?} edges\n", self.v(), self.e());
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout]    = note: this warning originates in the macro `write` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/digraph.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 12 |         write!(f, "{:?} vertices, {:?} edges\n", self.v(), self.e());
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` on by default
[INFO] [stdout]    = note: this warning originates in the macro `write` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/digraph.rs:14:13
[INFO] [stdout]    |
[INFO] [stdout] 14 |             write!(f, "{:?}: ", v);
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]    = note: this warning originates in the macro `write` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/digraph.rs:14:13
[INFO] [stdout]    |
[INFO] [stdout] 14 |             write!(f, "{:?}: ", v);
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]    = note: this warning originates in the macro `write` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/digraph.rs:16:17
[INFO] [stdout]    |
[INFO] [stdout] 16 |                 write!(f, "{:?} ", w);
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]    = note: this warning originates in the macro `write` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/digraph.rs:16:17
[INFO] [stdout]    |
[INFO] [stdout] 16 |                 write!(f, "{:?} ", w);
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]    = note: this warning originates in the macro `write` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/digraph.rs:18:13
[INFO] [stdout]    |
[INFO] [stdout] 18 |             write!(f, "\n");
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]    = note: this warning originates in the macro `write` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/digraph.rs:18:13
[INFO] [stdout]    |
[INFO] [stdout] 18 |             write!(f, "\n");
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]    = note: this warning originates in the macro `write` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: comparison is useless due to type limits
[INFO] [stdout]   --> src/digraph.rs:42:12
[INFO] [stdout]    |
[INFO] [stdout] 42 |         if v < 0 || v >= self.v {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_comparisons)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: comparison is useless due to type limits
[INFO] [stdout]   --> src/digraph.rs:42:12
[INFO] [stdout]    |
[INFO] [stdout] 42 |         if v < 0 || v >= self.v {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_comparisons)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]  --> src/protocol/types.rs:3:30
[INFO] [stdout]   |
[INFO] [stdout] 3 | #[derive(Debug, Clone, Hash, Serialize, Deserialize, PartialEq, Eq)]
[INFO] [stdout]   |                              ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: move this `impl` block outside the of the current constant `_IMPL_SERIALIZE_FOR_Colour`
[INFO] [stdout]   = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]   = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]   = note: requested on the command line with `-D non-local-definitions`
[INFO] [stdout]   = note: this error originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]  --> src/protocol/types.rs:3:41
[INFO] [stdout]   |
[INFO] [stdout] 3 | #[derive(Debug, Clone, Hash, Serialize, Deserialize, PartialEq, Eq)]
[INFO] [stdout]   |                                         ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_Colour`
[INFO] [stdout]   = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]   = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]   = note: this error originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]  --> src/protocol/types.rs:3:30
[INFO] [stdout]   |
[INFO] [stdout] 3 | #[derive(Debug, Clone, Hash, Serialize, Deserialize, PartialEq, Eq)]
[INFO] [stdout]   |                              ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: move this `impl` block outside the of the current constant `_IMPL_SERIALIZE_FOR_Colour`
[INFO] [stdout]   = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]   = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]   = note: requested on the command line with `-D non-local-definitions`
[INFO] [stdout]   = note: this error originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]  --> src/protocol/types.rs:3:41
[INFO] [stdout]   |
[INFO] [stdout] 3 | #[derive(Debug, Clone, Hash, Serialize, Deserialize, PartialEq, Eq)]
[INFO] [stdout]   |                                         ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_Colour`
[INFO] [stdout]   = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]   = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]   = note: this error originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]  --> src/types.rs:8:17
[INFO] [stdout]   |
[INFO] [stdout] 8 | #[derive(Clone, Serialize, Deserialize, Hash, PartialEq, Eq, PartialOrd, Ord)]
[INFO] [stdout]   |                 ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: move this `impl` block outside the of the current constant `_IMPL_SERIALIZE_FOR_NetAddr`
[INFO] [stdout]   = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]   = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]   = note: this error originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]  --> src/types.rs:8:28
[INFO] [stdout]   |
[INFO] [stdout] 8 | #[derive(Clone, Serialize, Deserialize, Hash, PartialEq, Eq, PartialOrd, Ord)]
[INFO] [stdout]   |                            ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_NetAddr`
[INFO] [stdout]   = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]   = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]   = note: this error originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]   --> src/types.rs:29:17
[INFO] [stdout]    |
[INFO] [stdout] 29 | #[derive(Clone, Serialize, Deserialize, Hash, PartialEq, Eq, PartialOrd, Ord)]
[INFO] [stdout]    |                 ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_SERIALIZE_FOR_Gossip`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: this error originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]   --> src/types.rs:29:28
[INFO] [stdout]    |
[INFO] [stdout] 29 | #[derive(Clone, Serialize, Deserialize, Hash, PartialEq, Eq, PartialOrd, Ord)]
[INFO] [stdout]    |                            ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_Gossip`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: this error originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]  --> src/types.rs:8:17
[INFO] [stdout]   |
[INFO] [stdout] 8 | #[derive(Clone, Serialize, Deserialize, Hash, PartialEq, Eq, PartialOrd, Ord)]
[INFO] [stdout]   |                 ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: move this `impl` block outside the of the current constant `_IMPL_SERIALIZE_FOR_NetAddr`
[INFO] [stdout]   = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]   = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]   = note: this error originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]   --> src/types.rs:52:17
[INFO] [stdout]    |
[INFO] [stdout] 52 | #[derive(Clone, Serialize, Deserialize)]
[INFO] [stdout]    |                 ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_SERIALIZE_FOR_Request`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: this error originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]  --> src/types.rs:8:28
[INFO] [stdout]   |
[INFO] [stdout] 8 | #[derive(Clone, Serialize, Deserialize, Hash, PartialEq, Eq, PartialOrd, Ord)]
[INFO] [stdout]   |                            ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_NetAddr`
[INFO] [stdout]   = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]   = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]   = note: this error originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]   --> src/types.rs:52:28
[INFO] [stdout]    |
[INFO] [stdout] 52 | #[derive(Clone, Serialize, Deserialize)]
[INFO] [stdout]    |                            ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_Request`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: this error originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]   --> src/types.rs:29:17
[INFO] [stdout]    |
[INFO] [stdout] 29 | #[derive(Clone, Serialize, Deserialize, Hash, PartialEq, Eq, PartialOrd, Ord)]
[INFO] [stdout]    |                 ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_SERIALIZE_FOR_Gossip`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: this error originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]   --> src/types.rs:29:28
[INFO] [stdout]    |
[INFO] [stdout] 29 | #[derive(Clone, Serialize, Deserialize, Hash, PartialEq, Eq, PartialOrd, Ord)]
[INFO] [stdout]    |                            ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_Gossip`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: this error originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]   --> src/types.rs:60:17
[INFO] [stdout]    |
[INFO] [stdout] 60 | #[derive(Clone, Serialize, Deserialize)]
[INFO] [stdout]    |                 ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_SERIALIZE_FOR_Response`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: this error originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]   --> src/types.rs:60:28
[INFO] [stdout]    |
[INFO] [stdout] 60 | #[derive(Clone, Serialize, Deserialize)]
[INFO] [stdout]    |                            ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_Response`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: this error originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]   --> src/types.rs:52:17
[INFO] [stdout]    |
[INFO] [stdout] 52 | #[derive(Clone, Serialize, Deserialize)]
[INFO] [stdout]    |                 ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_SERIALIZE_FOR_Request`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: this error originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]   --> src/types.rs:52:28
[INFO] [stdout]    |
[INFO] [stdout] 52 | #[derive(Clone, Serialize, Deserialize)]
[INFO] [stdout]    |                            ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_Request`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: this error originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]   --> src/types.rs:60:17
[INFO] [stdout]    |
[INFO] [stdout] 60 | #[derive(Clone, Serialize, Deserialize)]
[INFO] [stdout]    |                 ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_SERIALIZE_FOR_Response`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: this error originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]   --> src/types.rs:60:28
[INFO] [stdout]    |
[INFO] [stdout] 60 | #[derive(Clone, Serialize, Deserialize)]
[INFO] [stdout]    |                            ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_Response`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and neither the type nor the trait are at the same nesting level as the `impl` block
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: this error originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 10 previous errors; 18 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 10 previous errors; 17 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `swim` (bin "swim") due to 11 previous errors; 18 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stderr] error: could not compile `swim` (bin "swim" test) due to 11 previous errors; 17 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "f5a8a6341fd6e0863af84c3547c053a5b2338a00502c282fdc40139acad8fd35", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "f5a8a6341fd6e0863af84c3547c053a5b2338a00502c282fdc40139acad8fd35", kill_on_drop: false }`
[INFO] [stdout] f5a8a6341fd6e0863af84c3547c053a5b2338a00502c282fdc40139acad8fd35
