[INFO] fetching crate hbbft 0.1.1...
[INFO] testing hbbft-0.1.1 against nightly-2024-10-28+rustflags=-Zrandomize-layout for randomize-layout
[INFO] extracting crate hbbft 0.1.1 into /workspace/builds/worker-2-tc2/source
[INFO] validating manifest of crates.io crate hbbft 0.1.1 on toolchain nightly-2024-10-28
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+nightly-2024-10-28" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate hbbft 0.1.1
[INFO] removed 0 missing examples
[INFO] finished tweaking crates.io crate hbbft 0.1.1
[INFO] tweaked toml for crates.io crate hbbft 0.1.1 written to /workspace/builds/worker-2-tc2/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+nightly-2024-10-28" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 147 packages to latest compatible versions
[INFO] [stderr]       Adding colored v1.9.4 (available: v2.1.0)
[INFO] [stderr]       Adding crossbeam v0.6.0 (available: v0.8.4)
[INFO] [stderr]       Adding crossbeam-channel v0.3.9 (available: v0.5.13)
[INFO] [stderr]       Adding derivative v1.0.4 (available: v2.2.0)
[INFO] [stderr]       Adding env_logger v0.6.2 (available: v0.11.5)
[INFO] [stderr]       Adding itertools v0.8.2 (available: v0.13.0)
[INFO] [stderr]       Adding proptest v0.8.7 (available: v1.5.0)
[INFO] [stderr]       Adding rand v0.6.5 (available: v0.8.5)
[INFO] [stderr]       Adding rand_xorshift v0.1.1 (available: v0.3.0)
[INFO] [stderr]       Adding reed-solomon-erasure v3.1.1 (available: v6.0.0)
[INFO] [stderr]       Adding signifix v0.9.0 (available: v0.10.1)
[INFO] [stderr]       Adding threshold_crypto v0.3.2 (available: v0.4.0)
[INFO] [stderr]       Adding tiny-keccak v1.5.0 (available: v2.0.2)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+nightly-2024-10-28" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:4a844ea9eb2546a2d2c7022eacef16ef2e8229c7fbb2c7d4d55a9ceca922f72d" "/opt/rustwide/cargo-home/bin/cargo" "+nightly-2024-10-28" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 4ba455bebd305c594742172476e61b135f765fe9c2d5f25f7ca00def861833d0
[INFO] running `Command { std: "docker" "start" "-a" "4ba455bebd305c594742172476e61b135f765fe9c2d5f25f7ca00def861833d0", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "4ba455bebd305c594742172476e61b135f765fe9c2d5f25f7ca00def861833d0", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "4ba455bebd305c594742172476e61b135f765fe9c2d5f25f7ca00def861833d0", kill_on_drop: false }`
[INFO] [stdout] 4ba455bebd305c594742172476e61b135f765fe9c2d5f25f7ca00def861833d0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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 -Zrandomize-layout" "-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:4a844ea9eb2546a2d2c7022eacef16ef2e8229c7fbb2c7d4d55a9ceca922f72d" "/opt/rustwide/cargo-home/bin/cargo" "+nightly-2024-10-28" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 0d361ae9f7c83858a0816e7b2a5c2c28ddede4f448650037c82ad9226c30c831
[INFO] running `Command { std: "docker" "start" "-a" "0d361ae9f7c83858a0816e7b2a5c2c28ddede4f448650037c82ad9226c30c831", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.161
[INFO] [stderr]    Compiling autocfg v1.4.0
[INFO] [stderr]    Compiling proc-macro2 v1.0.89
[INFO] [stderr]    Compiling rand_core v0.4.2
[INFO] [stderr]    Compiling unicode-ident v1.0.13
[INFO] [stderr]    Compiling memchr v2.7.4
[INFO] [stderr]    Compiling crossbeam-utils v0.8.20
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling cfg-if v1.0.0
[INFO] [stderr]    Compiling proc-macro2 v0.4.30
[INFO] [stderr]    Compiling rayon-core v1.12.1
[INFO] [stderr]    Compiling gimli v0.31.1
[INFO] [stderr]    Compiling maybe-uninit v2.0.0
[INFO] [stderr]    Compiling getrandom v0.1.16
[INFO] [stderr]    Compiling failure_derive v0.1.8
[INFO] [stderr]    Compiling crunchy v0.2.2
[INFO] [stderr]    Compiling unicode-xid v0.1.0
[INFO] [stderr]    Compiling rand_core v0.3.1
[INFO] [stderr]    Compiling autocfg v0.1.8
[INFO] [stderr]    Compiling unicode-xid v0.2.6
[INFO] [stderr]    Compiling serde v1.0.214
[INFO] [stderr]    Compiling adler2 v2.0.0
[INFO] [stderr]    Compiling shlex v1.3.0
[INFO] [stderr]    Compiling miniz_oxide v0.8.0
[INFO] [stderr]    Compiling rand_isaac v0.1.1
[INFO] [stderr]    Compiling rand_hc v0.1.0
[INFO] [stderr]    Compiling rand_xorshift v0.1.1
[INFO] [stderr]    Compiling rand_chacha v0.1.1
[INFO] [stderr]    Compiling rand_pcg v0.1.2
[INFO] [stderr]    Compiling rand v0.6.5
[INFO] [stderr]    Compiling cc v1.1.31
[INFO] [stderr]    Compiling rand_jitter v0.1.4
[INFO] [stderr]    Compiling regex-syntax v0.8.5
[INFO] [stderr]    Compiling syn v0.15.44
[INFO] [stderr]    Compiling aho-corasick v1.1.3
[INFO] [stderr]    Compiling object v0.36.5
[INFO] [stderr]    Compiling unicode-xid v0.0.4
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.18
[INFO] [stderr]    Compiling memsec v0.5.7
[INFO] [stderr]    Compiling rustc-demangle v0.1.24
[INFO] [stderr]    Compiling synom v0.11.3
[INFO] [stderr]    Compiling quote v1.0.37
[INFO] [stderr]    Compiling crossbeam-deque v0.8.5
[INFO] [stderr]    Compiling quote v0.6.13
[INFO] [stderr]    Compiling quick-error v1.2.3
[INFO] [stderr]    Compiling either v1.13.0
[INFO] [stderr]    Compiling quote v0.3.15
[INFO] [stderr]    Compiling byteorder v1.5.0
[INFO] [stderr]    Compiling syn v2.0.86
[INFO] [stderr]    Compiling log v0.4.22
[INFO] [stderr]    Compiling humantime v1.3.0
[INFO] [stderr]    Compiling syn v0.11.11
[INFO] [stderr]    Compiling tiny-keccak v1.5.0
[INFO] [stderr]    Compiling smallvec v0.6.14
[INFO] [stderr]    Compiling termcolor v1.4.1
[INFO] [stderr]    Compiling hex_fmt v0.3.0
[INFO] [stderr]    Compiling init_with v1.1.0
[INFO] [stderr]    Compiling rayon v1.10.0
[INFO] [stderr]    Compiling reed-solomon-erasure v3.1.1
[INFO] [stderr]    Compiling rand v0.4.6
[INFO] [stderr]    Compiling rand_os v0.1.3
[INFO] [stderr]    Compiling atty v0.2.14
[INFO] [stderr]    Compiling errno v0.2.8
[INFO] [stderr]    Compiling rand04 v0.1.1
[INFO] [stderr]    Compiling pairing v0.14.2
[INFO] [stderr]    Compiling rand_derive v0.5.0
[INFO] [stderr]    Compiling addr2line v0.24.2
[INFO] [stderr]    Compiling rand04_compat v0.1.1
[INFO] [stderr]    Compiling regex-automata v0.4.8
[INFO] [stderr]    Compiling synstructure v0.12.6
[INFO] [stderr]    Compiling serde_derive v1.0.214
[INFO] [stderr]    Compiling derivative v1.0.4
[INFO] [stderr]    Compiling backtrace v0.3.74
[INFO] [stderr]    Compiling failure v0.1.8
[INFO] [stderr]    Compiling regex v1.11.1
[INFO] [stderr]    Compiling env_logger v0.6.2
[INFO] [stderr]    Compiling bincode v1.3.3
[INFO] [stderr]    Compiling threshold_crypto v0.3.2
[INFO] [stderr]    Compiling hbbft v0.1.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]   --> src/subset/subset.rs:25:9
[INFO] [stdout]    |
[INFO] [stdout] 25 |         #[derivative(Debug(format_with = "util::fmt_hex"))] Vec<u8>,
[INFO] [stdout]    |         ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/binary_agreement/mod.rs:85:39
[INFO] [stdout]    |
[INFO] [stdout] 85 | #[derive(Clone, Eq, PartialEq, Debug, Fail)]
[INFO] [stdout]    |                                       ^---
[INFO] [stdout]    |                                       |
[INFO] [stdout]    |                                       `Fail` is not local
[INFO] [stdout]    |                                       move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_Error`
[INFO] [stdout] 86 | pub enum Error {
[INFO] [stdout]    |          ----- `Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/binary_agreement/mod.rs:85:39
[INFO] [stdout]    |
[INFO] [stdout] 85 | #[derive(Clone, Eq, PartialEq, Debug, Fail)]
[INFO] [stdout]    |                                       ^---
[INFO] [stdout]    |                                       |
[INFO] [stdout]    |                                       `Display` is not local
[INFO] [stdout]    |                                       move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_Error`
[INFO] [stdout] 86 | pub enum Error {
[INFO] [stdout]    |          ----- `Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/binary_agreement/mod.rs:109:24
[INFO] [stdout]     |
[INFO] [stdout] 109 | #[derive(Clone, Debug, Fail, PartialEq)]
[INFO] [stdout]     |                        ^---
[INFO] [stdout]     |                        |
[INFO] [stdout]     |                        `Fail` is not local
[INFO] [stdout]     |                        move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_FaultKind`
[INFO] [stdout] 110 | pub enum FaultKind {
[INFO] [stdout]     |          --------- `FaultKind` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/binary_agreement/mod.rs:109:24
[INFO] [stdout]     |
[INFO] [stdout] 109 | #[derive(Clone, Debug, Fail, PartialEq)]
[INFO] [stdout]     |                        ^---
[INFO] [stdout]     |                        |
[INFO] [stdout]     |                        `Display` is not local
[INFO] [stdout]     |                        move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_FaultKind`
[INFO] [stdout] 110 | pub enum FaultKind {
[INFO] [stdout]     |          --------- `FaultKind` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> src/broadcast/error.rs:4:35
[INFO] [stdout]   |
[INFO] [stdout] 4 | #[derive(Clone, PartialEq, Debug, Fail)]
[INFO] [stdout]   |                                   ^---
[INFO] [stdout]   |                                   |
[INFO] [stdout]   |                                   `Fail` is not local
[INFO] [stdout]   |                                   move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_Error`
[INFO] [stdout] 5 | pub enum Error {
[INFO] [stdout]   |          ----- `Error` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]   = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> src/broadcast/error.rs:4:35
[INFO] [stdout]   |
[INFO] [stdout] 4 | #[derive(Clone, PartialEq, Debug, Fail)]
[INFO] [stdout]   |                                   ^---
[INFO] [stdout]   |                                   |
[INFO] [stdout]   |                                   `Display` is not local
[INFO] [stdout]   |                                   move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_Error`
[INFO] [stdout] 5 | pub enum Error {
[INFO] [stdout]   |          ----- `Error` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]   = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/broadcast/error.rs:27:24
[INFO] [stdout]    |
[INFO] [stdout] 27 | #[derive(Clone, Debug, Fail, PartialEq)]
[INFO] [stdout]    |                        ^---
[INFO] [stdout]    |                        |
[INFO] [stdout]    |                        `Fail` is not local
[INFO] [stdout]    |                        move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_FaultKind`
[INFO] [stdout] 28 | pub enum FaultKind {
[INFO] [stdout]    |          --------- `FaultKind` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/broadcast/error.rs:27:24
[INFO] [stdout]    |
[INFO] [stdout] 27 | #[derive(Clone, Debug, Fail, PartialEq)]
[INFO] [stdout]    |                        ^---
[INFO] [stdout]    |                        |
[INFO] [stdout]    |                        `Display` is not local
[INFO] [stdout]    |                        move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_FaultKind`
[INFO] [stdout] 28 | pub enum FaultKind {
[INFO] [stdout]    |          --------- `FaultKind` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> src/dynamic_honey_badger/error.rs:8:17
[INFO] [stdout]   |
[INFO] [stdout] 8 | #[derive(Debug, Fail)]
[INFO] [stdout]   |                 ^---
[INFO] [stdout]   |                 |
[INFO] [stdout]   |                 `Fail` is not local
[INFO] [stdout]   |                 move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_Error`
[INFO] [stdout] 9 | pub enum Error {
[INFO] [stdout]   |          ----- `Error` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]   = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> src/dynamic_honey_badger/error.rs:8:17
[INFO] [stdout]   |
[INFO] [stdout] 8 | #[derive(Debug, Fail)]
[INFO] [stdout]   |                 ^---
[INFO] [stdout]   |                 |
[INFO] [stdout]   |                 `Display` is not local
[INFO] [stdout]   |                 move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_Error`
[INFO] [stdout] 9 | pub enum Error {
[INFO] [stdout]   |          ----- `Error` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]   = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/dynamic_honey_badger/error.rs:33:24
[INFO] [stdout]    |
[INFO] [stdout] 33 | #[derive(Clone, Debug, Fail, PartialEq)]
[INFO] [stdout]    |                        ^---
[INFO] [stdout]    |                        |
[INFO] [stdout]    |                        `Fail` is not local
[INFO] [stdout]    |                        move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_FaultKind`
[INFO] [stdout] 34 | pub enum FaultKind {
[INFO] [stdout]    |          --------- `FaultKind` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/dynamic_honey_badger/error.rs:33:24
[INFO] [stdout]    |
[INFO] [stdout] 33 | #[derive(Clone, Debug, Fail, PartialEq)]
[INFO] [stdout]    |                        ^---
[INFO] [stdout]    |                        |
[INFO] [stdout]    |                        `Display` is not local
[INFO] [stdout]    |                        move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_FaultKind`
[INFO] [stdout] 34 | pub enum FaultKind {
[INFO] [stdout]    |          --------- `FaultKind` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/honey_badger/error.rs:9:17
[INFO] [stdout]    |
[INFO] [stdout] 9  | #[derive(Debug, Fail)]
[INFO] [stdout]    |                 ^---
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Fail` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_Error`
[INFO] [stdout] 10 | pub enum Error {
[INFO] [stdout]    |          ----- `Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/honey_badger/error.rs:9:17
[INFO] [stdout]    |
[INFO] [stdout] 9  | #[derive(Debug, Fail)]
[INFO] [stdout]    |                 ^---
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Display` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_Error`
[INFO] [stdout] 10 | pub enum Error {
[INFO] [stdout]    |          ----- `Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/honey_badger/error.rs:35:24
[INFO] [stdout]    |
[INFO] [stdout] 35 | #[derive(Clone, Debug, Fail, PartialEq)]
[INFO] [stdout]    |                        ^---
[INFO] [stdout]    |                        |
[INFO] [stdout]    |                        `Fail` is not local
[INFO] [stdout]    |                        move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_FaultKind`
[INFO] [stdout] 36 | pub enum FaultKind {
[INFO] [stdout]    |          --------- `FaultKind` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/honey_badger/error.rs:35:24
[INFO] [stdout]    |
[INFO] [stdout] 35 | #[derive(Clone, Debug, Fail, PartialEq)]
[INFO] [stdout]    |                        ^---
[INFO] [stdout]    |                        |
[INFO] [stdout]    |                        `Display` is not local
[INFO] [stdout]    |                        move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_FaultKind`
[INFO] [stdout] 36 | pub enum FaultKind {
[INFO] [stdout]    |          --------- `FaultKind` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/queueing_honey_badger/mod.rs:44:17
[INFO] [stdout]    |
[INFO] [stdout] 44 | #[derive(Debug, Fail)]
[INFO] [stdout]    |                 ^---
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Fail` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_Error`
[INFO] [stdout] 45 | pub enum Error {
[INFO] [stdout]    |          ----- `Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/queueing_honey_badger/mod.rs:44:17
[INFO] [stdout]    |
[INFO] [stdout] 44 | #[derive(Debug, Fail)]
[INFO] [stdout]    |                 ^---
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Display` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_Error`
[INFO] [stdout] 45 | pub enum Error {
[INFO] [stdout]    |          ----- `Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> src/sender_queue/error.rs:5:17
[INFO] [stdout]   |
[INFO] [stdout] 5 | #[derive(Debug, Fail)]
[INFO] [stdout]   |                 ^---
[INFO] [stdout]   |                 |
[INFO] [stdout]   |                 `Fail` is not local
[INFO] [stdout]   |                 move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_Error`
[INFO] [stdout] 6 | pub enum Error<E>
[INFO] [stdout]   |          ----- `Error` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]   = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> src/sender_queue/error.rs:5:17
[INFO] [stdout]   |
[INFO] [stdout] 5 | #[derive(Debug, Fail)]
[INFO] [stdout]   |                 ^---
[INFO] [stdout]   |                 |
[INFO] [stdout]   |                 `Display` is not local
[INFO] [stdout]   |                 move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_Error`
[INFO] [stdout] 6 | pub enum Error<E>
[INFO] [stdout]   |          ----- `Error` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]   = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/subset/error.rs:9:35
[INFO] [stdout]    |
[INFO] [stdout] 9  | #[derive(Clone, PartialEq, Debug, Fail)]
[INFO] [stdout]    |                                   ^---
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Fail` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_Error`
[INFO] [stdout] 10 | pub enum Error {
[INFO] [stdout]    |          ----- `Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/subset/error.rs:9:35
[INFO] [stdout]    |
[INFO] [stdout] 9  | #[derive(Clone, PartialEq, Debug, Fail)]
[INFO] [stdout]    |                                   ^---
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_Error`
[INFO] [stdout] 10 | pub enum Error {
[INFO] [stdout]    |          ----- `Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/subset/error.rs:32:24
[INFO] [stdout]    |
[INFO] [stdout] 32 | #[derive(Clone, Debug, Fail, PartialEq)]
[INFO] [stdout]    |                        ^---
[INFO] [stdout]    |                        |
[INFO] [stdout]    |                        `Fail` is not local
[INFO] [stdout]    |                        move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_FaultKind`
[INFO] [stdout] 33 | pub enum FaultKind {
[INFO] [stdout]    |          --------- `FaultKind` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/subset/error.rs:32:24
[INFO] [stdout]    |
[INFO] [stdout] 32 | #[derive(Clone, Debug, Fail, PartialEq)]
[INFO] [stdout]    |                        ^---
[INFO] [stdout]    |                        |
[INFO] [stdout]    |                        `Display` is not local
[INFO] [stdout]    |                        move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_FaultKind`
[INFO] [stdout] 33 | pub enum FaultKind {
[INFO] [stdout]    |          --------- `FaultKind` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/sync_key_gen.rs:196:39
[INFO] [stdout]     |
[INFO] [stdout] 196 | #[derive(Clone, Eq, PartialEq, Debug, Fail)]
[INFO] [stdout]     |                                       ^---
[INFO] [stdout]     |                                       |
[INFO] [stdout]     |                                       `Fail` is not local
[INFO] [stdout]     |                                       move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_Error`
[INFO] [stdout] 197 | pub enum Error {
[INFO] [stdout]     |          ----- `Error` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/sync_key_gen.rs:196:39
[INFO] [stdout]     |
[INFO] [stdout] 196 | #[derive(Clone, Eq, PartialEq, Debug, Fail)]
[INFO] [stdout]     |                                       ^---
[INFO] [stdout]     |                                       |
[INFO] [stdout]     |                                       `Display` is not local
[INFO] [stdout]     |                                       move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_Error`
[INFO] [stdout] 197 | pub enum Error {
[INFO] [stdout]     |          ----- `Error` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/sync_key_gen.rs:551:45
[INFO] [stdout]     |
[INFO] [stdout] 551 | #[derive(Clone, Copy, Eq, PartialEq, Debug, Fail)]
[INFO] [stdout]     |                                             ^---
[INFO] [stdout]     |                                             |
[INFO] [stdout]     |                                             `Fail` is not local
[INFO] [stdout]     |                                             move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_AckFault`
[INFO] [stdout] 552 | pub enum AckFault {
[INFO] [stdout]     |          -------- `AckFault` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/sync_key_gen.rs:551:45
[INFO] [stdout]     |
[INFO] [stdout] 551 | #[derive(Clone, Copy, Eq, PartialEq, Debug, Fail)]
[INFO] [stdout]     |                                             ^---
[INFO] [stdout]     |                                             |
[INFO] [stdout]     |                                             `Display` is not local
[INFO] [stdout]     |                                             move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_AckFault`
[INFO] [stdout] 552 | pub enum AckFault {
[INFO] [stdout]     |          -------- `AckFault` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/sync_key_gen.rs:571:45
[INFO] [stdout]     |
[INFO] [stdout] 571 | #[derive(Clone, Copy, Eq, PartialEq, Debug, Fail)]
[INFO] [stdout]     |                                             ^---
[INFO] [stdout]     |                                             |
[INFO] [stdout]     |                                             `Fail` is not local
[INFO] [stdout]     |                                             move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_PartFault`
[INFO] [stdout] 572 | pub enum PartFault {
[INFO] [stdout]     |          --------- `PartFault` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/sync_key_gen.rs:571:45
[INFO] [stdout]     |
[INFO] [stdout] 571 | #[derive(Clone, Copy, Eq, PartialEq, Debug, Fail)]
[INFO] [stdout]     |                                             ^---
[INFO] [stdout]     |                                             |
[INFO] [stdout]     |                                             `Display` is not local
[INFO] [stdout]     |                                             move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_PartFault`
[INFO] [stdout] 572 | pub enum PartFault {
[INFO] [stdout]     |          --------- `PartFault` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/threshold_decrypt.rs:27:39
[INFO] [stdout]    |
[INFO] [stdout] 27 | #[derive(Clone, Eq, PartialEq, Debug, Fail)]
[INFO] [stdout]    |                                       ^---
[INFO] [stdout]    |                                       |
[INFO] [stdout]    |                                       `Fail` is not local
[INFO] [stdout]    |                                       move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_Error`
[INFO] [stdout] 28 | pub enum Error {
[INFO] [stdout]    |          ----- `Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/threshold_decrypt.rs:27:39
[INFO] [stdout]    |
[INFO] [stdout] 27 | #[derive(Clone, Eq, PartialEq, Debug, Fail)]
[INFO] [stdout]    |                                       ^---
[INFO] [stdout]    |                                       |
[INFO] [stdout]    |                                       `Display` is not local
[INFO] [stdout]    |                                       move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_Error`
[INFO] [stdout] 28 | pub enum Error {
[INFO] [stdout]    |          ----- `Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/threshold_decrypt.rs:50:24
[INFO] [stdout]    |
[INFO] [stdout] 50 | #[derive(Clone, Debug, Fail, PartialEq)]
[INFO] [stdout]    |                        ^---
[INFO] [stdout]    |                        |
[INFO] [stdout]    |                        `Fail` is not local
[INFO] [stdout]    |                        move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_FaultKind`
[INFO] [stdout] 51 | pub enum FaultKind {
[INFO] [stdout]    |          --------- `FaultKind` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/threshold_decrypt.rs:50:24
[INFO] [stdout]    |
[INFO] [stdout] 50 | #[derive(Clone, Debug, Fail, PartialEq)]
[INFO] [stdout]    |                        ^---
[INFO] [stdout]    |                        |
[INFO] [stdout]    |                        `Display` is not local
[INFO] [stdout]    |                        move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_FaultKind`
[INFO] [stdout] 51 | pub enum FaultKind {
[INFO] [stdout]    |          --------- `FaultKind` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/threshold_sign.rs:33:39
[INFO] [stdout]    |
[INFO] [stdout] 33 | #[derive(Clone, Eq, PartialEq, Debug, Fail)]
[INFO] [stdout]    |                                       ^---
[INFO] [stdout]    |                                       |
[INFO] [stdout]    |                                       `Fail` is not local
[INFO] [stdout]    |                                       move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_Error`
[INFO] [stdout] 34 | pub enum Error {
[INFO] [stdout]    |          ----- `Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/threshold_sign.rs:33:39
[INFO] [stdout]    |
[INFO] [stdout] 33 | #[derive(Clone, Eq, PartialEq, Debug, Fail)]
[INFO] [stdout]    |                                       ^---
[INFO] [stdout]    |                                       |
[INFO] [stdout]    |                                       `Display` is not local
[INFO] [stdout]    |                                       move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_Error`
[INFO] [stdout] 34 | pub enum Error {
[INFO] [stdout]    |          ----- `Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/threshold_sign.rs:56:24
[INFO] [stdout]    |
[INFO] [stdout] 56 | #[derive(Clone, Debug, Fail, PartialEq)]
[INFO] [stdout]    |                        ^---
[INFO] [stdout]    |                        |
[INFO] [stdout]    |                        `Fail` is not local
[INFO] [stdout]    |                        move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_FaultKind`
[INFO] [stdout] 57 | pub enum FaultKind {
[INFO] [stdout]    |          --------- `FaultKind` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/threshold_sign.rs:56:24
[INFO] [stdout]    |
[INFO] [stdout] 56 | #[derive(Clone, Debug, Fail, PartialEq)]
[INFO] [stdout]    |                        ^---
[INFO] [stdout]    |                        |
[INFO] [stdout]    |                        `Display` is not local
[INFO] [stdout]    |                        move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_FaultKind`
[INFO] [stdout] 57 | pub enum FaultKind {
[INFO] [stdout]    |          --------- `FaultKind` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 15.04s
[INFO] running `Command { std: "docker" "inspect" "0d361ae9f7c83858a0816e7b2a5c2c28ddede4f448650037c82ad9226c30c831", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "0d361ae9f7c83858a0816e7b2a5c2c28ddede4f448650037c82ad9226c30c831", kill_on_drop: false }`
[INFO] [stdout] 0d361ae9f7c83858a0816e7b2a5c2c28ddede4f448650037c82ad9226c30c831
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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 -Zrandomize-layout" "-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:4a844ea9eb2546a2d2c7022eacef16ef2e8229c7fbb2c7d4d55a9ceca922f72d" "/opt/rustwide/cargo-home/bin/cargo" "+nightly-2024-10-28" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 1322d89bc7220fd7365808b34dce4791985a86e5080b30c64f4e5766aec08610
[INFO] running `Command { std: "docker" "start" "-a" "1322d89bc7220fd7365808b34dce4791985a86e5080b30c64f4e5766aec08610", kill_on_drop: false }`
[INFO] [stderr]    Compiling lazy_static v1.5.0
[INFO] [stderr]    Compiling semver-parser v0.7.0
[INFO] [stderr]    Compiling rustix v0.38.38
[INFO] [stderr]    Compiling memoffset v0.5.6
[INFO] [stderr]    Compiling arrayvec v0.4.12
[INFO] [stderr]    Compiling cfg-if v0.1.10
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling stable_deref_trait v1.2.0
[INFO] [stderr]    Compiling linux-raw-sys v0.4.14
[INFO] [stderr]    Compiling nodrop v0.1.14
[INFO] [stderr]    Compiling bitflags v2.6.0
[INFO] [stderr]    Compiling scopeguard v0.3.3
[INFO] [stderr]    Compiling fastrand v2.1.1
[INFO] [stderr]    Compiling scopeguard v1.2.0
[INFO] [stderr]    Compiling once_cell v1.20.2
[INFO] [stderr]    Compiling wait-timeout v0.2.0
[INFO] [stderr]    Compiling crossbeam-utils v0.6.6
[INFO] [stderr]    Compiling owning_ref v0.4.1
[INFO] [stderr]    Compiling fnv v1.0.7
[INFO] [stderr]    Compiling bit-vec v0.6.3
[INFO] [stderr]    Compiling num_cpus v1.16.0
[INFO] [stderr]    Compiling is-terminal v0.4.13
[INFO] [stderr]    Compiling semver v0.9.0
[INFO] [stderr]    Compiling rand v0.5.6
[INFO] [stderr]    Compiling lock_api v0.1.5
[INFO] [stderr]    Compiling bitflags v1.3.2
[INFO] [stderr]    Compiling strsim v0.10.0
[INFO] [stderr]    Compiling bit-set v0.5.3
[INFO] [stderr]    Compiling regex-syntax v0.6.29
[INFO] [stderr]    Compiling colored v1.9.4
[INFO] [stderr]    Compiling itertools v0.8.2
[INFO] [stderr]    Compiling signifix v0.9.0
[INFO] [stderr]    Compiling rustc_version v0.2.3
[INFO] [stderr]    Compiling docopt v1.1.1
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]   --> src/subset/subset.rs:25:9
[INFO] [stdout]    |
[INFO] [stdout] 25 |         #[derivative(Debug(format_with = "util::fmt_hex"))] Vec<u8>,
[INFO] [stdout]    |         ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/binary_agreement/mod.rs:85:39
[INFO] [stdout]    |
[INFO] [stdout] 85 | #[derive(Clone, Eq, PartialEq, Debug, Fail)]
[INFO] [stdout]    |                                       ^---
[INFO] [stdout]    |                                       |
[INFO] [stdout]    |                                       `Fail` is not local
[INFO] [stdout]    |                                       move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_Error`
[INFO] [stdout] 86 | pub enum Error {
[INFO] [stdout]    |          ----- `Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/binary_agreement/mod.rs:85:39
[INFO] [stdout]    |
[INFO] [stdout] 85 | #[derive(Clone, Eq, PartialEq, Debug, Fail)]
[INFO] [stdout]    |                                       ^---
[INFO] [stdout]    |                                       |
[INFO] [stdout]    |                                       `Display` is not local
[INFO] [stdout]    |                                       move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_Error`
[INFO] [stdout] 86 | pub enum Error {
[INFO] [stdout]    |          ----- `Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/binary_agreement/mod.rs:109:24
[INFO] [stdout]     |
[INFO] [stdout] 109 | #[derive(Clone, Debug, Fail, PartialEq)]
[INFO] [stdout]     |                        ^---
[INFO] [stdout]     |                        |
[INFO] [stdout]     |                        `Fail` is not local
[INFO] [stdout]     |                        move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_FaultKind`
[INFO] [stdout] 110 | pub enum FaultKind {
[INFO] [stdout]     |          --------- `FaultKind` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/binary_agreement/mod.rs:109:24
[INFO] [stdout]     |
[INFO] [stdout] 109 | #[derive(Clone, Debug, Fail, PartialEq)]
[INFO] [stdout]     |                        ^---
[INFO] [stdout]     |                        |
[INFO] [stdout]     |                        `Display` is not local
[INFO] [stdout]     |                        move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_FaultKind`
[INFO] [stdout] 110 | pub enum FaultKind {
[INFO] [stdout]     |          --------- `FaultKind` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> src/broadcast/error.rs:4:35
[INFO] [stdout]   |
[INFO] [stdout] 4 | #[derive(Clone, PartialEq, Debug, Fail)]
[INFO] [stdout]   |                                   ^---
[INFO] [stdout]   |                                   |
[INFO] [stdout]   |                                   `Fail` is not local
[INFO] [stdout]   |                                   move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_Error`
[INFO] [stdout] 5 | pub enum Error {
[INFO] [stdout]   |          ----- `Error` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]   = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> src/broadcast/error.rs:4:35
[INFO] [stdout]   |
[INFO] [stdout] 4 | #[derive(Clone, PartialEq, Debug, Fail)]
[INFO] [stdout]   |                                   ^---
[INFO] [stdout]   |                                   |
[INFO] [stdout]   |                                   `Display` is not local
[INFO] [stdout]   |                                   move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_Error`
[INFO] [stdout] 5 | pub enum Error {
[INFO] [stdout]   |          ----- `Error` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]   = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/broadcast/error.rs:27:24
[INFO] [stdout]    |
[INFO] [stdout] 27 | #[derive(Clone, Debug, Fail, PartialEq)]
[INFO] [stdout]    |                        ^---
[INFO] [stdout]    |                        |
[INFO] [stdout]    |                        `Fail` is not local
[INFO] [stdout]    |                        move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_FaultKind`
[INFO] [stdout] 28 | pub enum FaultKind {
[INFO] [stdout]    |          --------- `FaultKind` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/broadcast/error.rs:27:24
[INFO] [stdout]    |
[INFO] [stdout] 27 | #[derive(Clone, Debug, Fail, PartialEq)]
[INFO] [stdout]    |                        ^---
[INFO] [stdout]    |                        |
[INFO] [stdout]    |                        `Display` is not local
[INFO] [stdout]    |                        move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_FaultKind`
[INFO] [stdout] 28 | pub enum FaultKind {
[INFO] [stdout]    |          --------- `FaultKind` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> src/dynamic_honey_badger/error.rs:8:17
[INFO] [stdout]   |
[INFO] [stdout] 8 | #[derive(Debug, Fail)]
[INFO] [stdout]   |                 ^---
[INFO] [stdout]   |                 |
[INFO] [stdout]   |                 `Fail` is not local
[INFO] [stdout]   |                 move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_Error`
[INFO] [stdout] 9 | pub enum Error {
[INFO] [stdout]   |          ----- `Error` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]   = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> src/dynamic_honey_badger/error.rs:8:17
[INFO] [stdout]   |
[INFO] [stdout] 8 | #[derive(Debug, Fail)]
[INFO] [stdout]   |                 ^---
[INFO] [stdout]   |                 |
[INFO] [stdout]   |                 `Display` is not local
[INFO] [stdout]   |                 move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_Error`
[INFO] [stdout] 9 | pub enum Error {
[INFO] [stdout]   |          ----- `Error` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]   = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/dynamic_honey_badger/error.rs:33:24
[INFO] [stdout]    |
[INFO] [stdout] 33 | #[derive(Clone, Debug, Fail, PartialEq)]
[INFO] [stdout]    |                        ^---
[INFO] [stdout]    |                        |
[INFO] [stdout]    |                        `Fail` is not local
[INFO] [stdout]    |                        move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_FaultKind`
[INFO] [stdout] 34 | pub enum FaultKind {
[INFO] [stdout]    |          --------- `FaultKind` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/dynamic_honey_badger/error.rs:33:24
[INFO] [stdout]    |
[INFO] [stdout] 33 | #[derive(Clone, Debug, Fail, PartialEq)]
[INFO] [stdout]    |                        ^---
[INFO] [stdout]    |                        |
[INFO] [stdout]    |                        `Display` is not local
[INFO] [stdout]    |                        move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_FaultKind`
[INFO] [stdout] 34 | pub enum FaultKind {
[INFO] [stdout]    |          --------- `FaultKind` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/honey_badger/error.rs:9:17
[INFO] [stdout]    |
[INFO] [stdout] 9  | #[derive(Debug, Fail)]
[INFO] [stdout]    |                 ^---
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Fail` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_Error`
[INFO] [stdout] 10 | pub enum Error {
[INFO] [stdout]    |          ----- `Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/honey_badger/error.rs:9:17
[INFO] [stdout]    |
[INFO] [stdout] 9  | #[derive(Debug, Fail)]
[INFO] [stdout]    |                 ^---
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Display` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_Error`
[INFO] [stdout] 10 | pub enum Error {
[INFO] [stdout]    |          ----- `Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/honey_badger/error.rs:35:24
[INFO] [stdout]    |
[INFO] [stdout] 35 | #[derive(Clone, Debug, Fail, PartialEq)]
[INFO] [stdout]    |                        ^---
[INFO] [stdout]    |                        |
[INFO] [stdout]    |                        `Fail` is not local
[INFO] [stdout]    |                        move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_FaultKind`
[INFO] [stdout] 36 | pub enum FaultKind {
[INFO] [stdout]    |          --------- `FaultKind` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/honey_badger/error.rs:35:24
[INFO] [stdout]    |
[INFO] [stdout] 35 | #[derive(Clone, Debug, Fail, PartialEq)]
[INFO] [stdout]    |                        ^---
[INFO] [stdout]    |                        |
[INFO] [stdout]    |                        `Display` is not local
[INFO] [stdout]    |                        move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_FaultKind`
[INFO] [stdout] 36 | pub enum FaultKind {
[INFO] [stdout]    |          --------- `FaultKind` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/queueing_honey_badger/mod.rs:44:17
[INFO] [stdout]    |
[INFO] [stdout] 44 | #[derive(Debug, Fail)]
[INFO] [stdout]    |                 ^---
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Fail` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_Error`
[INFO] [stdout] 45 | pub enum Error {
[INFO] [stdout]    |          ----- `Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/queueing_honey_badger/mod.rs:44:17
[INFO] [stdout]    |
[INFO] [stdout] 44 | #[derive(Debug, Fail)]
[INFO] [stdout]    |                 ^---
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Display` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_Error`
[INFO] [stdout] 45 | pub enum Error {
[INFO] [stdout]    |          ----- `Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> src/sender_queue/error.rs:5:17
[INFO] [stdout]   |
[INFO] [stdout] 5 | #[derive(Debug, Fail)]
[INFO] [stdout]   |                 ^---
[INFO] [stdout]   |                 |
[INFO] [stdout]   |                 `Fail` is not local
[INFO] [stdout]   |                 move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_Error`
[INFO] [stdout] 6 | pub enum Error<E>
[INFO] [stdout]   |          ----- `Error` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]   = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> src/sender_queue/error.rs:5:17
[INFO] [stdout]   |
[INFO] [stdout] 5 | #[derive(Debug, Fail)]
[INFO] [stdout]   |                 ^---
[INFO] [stdout]   |                 |
[INFO] [stdout]   |                 `Display` is not local
[INFO] [stdout]   |                 move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_Error`
[INFO] [stdout] 6 | pub enum Error<E>
[INFO] [stdout]   |          ----- `Error` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]   = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/subset/error.rs:9:35
[INFO] [stdout]    |
[INFO] [stdout] 9  | #[derive(Clone, PartialEq, Debug, Fail)]
[INFO] [stdout]    |                                   ^---
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Fail` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_Error`
[INFO] [stdout] 10 | pub enum Error {
[INFO] [stdout]    |          ----- `Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/subset/error.rs:9:35
[INFO] [stdout]    |
[INFO] [stdout] 9  | #[derive(Clone, PartialEq, Debug, Fail)]
[INFO] [stdout]    |                                   ^---
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_Error`
[INFO] [stdout] 10 | pub enum Error {
[INFO] [stdout]    |          ----- `Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/subset/error.rs:32:24
[INFO] [stdout]    |
[INFO] [stdout] 32 | #[derive(Clone, Debug, Fail, PartialEq)]
[INFO] [stdout]    |                        ^---
[INFO] [stdout]    |                        |
[INFO] [stdout]    |                        `Fail` is not local
[INFO] [stdout]    |                        move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_FaultKind`
[INFO] [stdout] 33 | pub enum FaultKind {
[INFO] [stdout]    |          --------- `FaultKind` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/subset/error.rs:32:24
[INFO] [stdout]    |
[INFO] [stdout] 32 | #[derive(Clone, Debug, Fail, PartialEq)]
[INFO] [stdout]    |                        ^---
[INFO] [stdout]    |                        |
[INFO] [stdout]    |                        `Display` is not local
[INFO] [stdout]    |                        move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_FaultKind`
[INFO] [stdout] 33 | pub enum FaultKind {
[INFO] [stdout]    |          --------- `FaultKind` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/sync_key_gen.rs:196:39
[INFO] [stdout]     |
[INFO] [stdout] 196 | #[derive(Clone, Eq, PartialEq, Debug, Fail)]
[INFO] [stdout]     |                                       ^---
[INFO] [stdout]     |                                       |
[INFO] [stdout]     |                                       `Fail` is not local
[INFO] [stdout]     |                                       move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_Error`
[INFO] [stdout] 197 | pub enum Error {
[INFO] [stdout]     |          ----- `Error` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/sync_key_gen.rs:196:39
[INFO] [stdout]     |
[INFO] [stdout] 196 | #[derive(Clone, Eq, PartialEq, Debug, Fail)]
[INFO] [stdout]     |                                       ^---
[INFO] [stdout]     |                                       |
[INFO] [stdout]     |                                       `Display` is not local
[INFO] [stdout]     |                                       move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_Error`
[INFO] [stdout] 197 | pub enum Error {
[INFO] [stdout]     |          ----- `Error` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/sync_key_gen.rs:551:45
[INFO] [stdout]     |
[INFO] [stdout] 551 | #[derive(Clone, Copy, Eq, PartialEq, Debug, Fail)]
[INFO] [stdout]     |                                             ^---
[INFO] [stdout]     |                                             |
[INFO] [stdout]     |                                             `Fail` is not local
[INFO] [stdout]     |                                             move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_AckFault`
[INFO] [stdout] 552 | pub enum AckFault {
[INFO] [stdout]     |          -------- `AckFault` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/sync_key_gen.rs:551:45
[INFO] [stdout]     |
[INFO] [stdout] 551 | #[derive(Clone, Copy, Eq, PartialEq, Debug, Fail)]
[INFO] [stdout]     |                                             ^---
[INFO] [stdout]     |                                             |
[INFO] [stdout]     |                                             `Display` is not local
[INFO] [stdout]     |                                             move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_AckFault`
[INFO] [stdout] 552 | pub enum AckFault {
[INFO] [stdout]     |          -------- `AckFault` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/sync_key_gen.rs:571:45
[INFO] [stdout]     |
[INFO] [stdout] 571 | #[derive(Clone, Copy, Eq, PartialEq, Debug, Fail)]
[INFO] [stdout]     |                                             ^---
[INFO] [stdout]     |                                             |
[INFO] [stdout]     |                                             `Fail` is not local
[INFO] [stdout]     |                                             move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_PartFault`
[INFO] [stdout] 572 | pub enum PartFault {
[INFO] [stdout]     |          --------- `PartFault` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/sync_key_gen.rs:571:45
[INFO] [stdout]     |
[INFO] [stdout] 571 | #[derive(Clone, Copy, Eq, PartialEq, Debug, Fail)]
[INFO] [stdout]     |                                             ^---
[INFO] [stdout]     |                                             |
[INFO] [stdout]     |                                             `Display` is not local
[INFO] [stdout]     |                                             move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_PartFault`
[INFO] [stdout] 572 | pub enum PartFault {
[INFO] [stdout]     |          --------- `PartFault` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/threshold_decrypt.rs:27:39
[INFO] [stdout]    |
[INFO] [stdout] 27 | #[derive(Clone, Eq, PartialEq, Debug, Fail)]
[INFO] [stdout]    |                                       ^---
[INFO] [stdout]    |                                       |
[INFO] [stdout]    |                                       `Fail` is not local
[INFO] [stdout]    |                                       move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_Error`
[INFO] [stdout] 28 | pub enum Error {
[INFO] [stdout]    |          ----- `Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/threshold_decrypt.rs:27:39
[INFO] [stdout]    |
[INFO] [stdout] 27 | #[derive(Clone, Eq, PartialEq, Debug, Fail)]
[INFO] [stdout]    |                                       ^---
[INFO] [stdout]    |                                       |
[INFO] [stdout]    |                                       `Display` is not local
[INFO] [stdout]    |                                       move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_Error`
[INFO] [stdout] 28 | pub enum Error {
[INFO] [stdout]    |          ----- `Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/threshold_decrypt.rs:50:24
[INFO] [stdout]    |
[INFO] [stdout] 50 | #[derive(Clone, Debug, Fail, PartialEq)]
[INFO] [stdout]    |                        ^---
[INFO] [stdout]    |                        |
[INFO] [stdout]    |                        `Fail` is not local
[INFO] [stdout]    |                        move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_FaultKind`
[INFO] [stdout] 51 | pub enum FaultKind {
[INFO] [stdout]    |          --------- `FaultKind` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/threshold_decrypt.rs:50:24
[INFO] [stdout]    |
[INFO] [stdout] 50 | #[derive(Clone, Debug, Fail, PartialEq)]
[INFO] [stdout]    |                        ^---
[INFO] [stdout]    |                        |
[INFO] [stdout]    |                        `Display` is not local
[INFO] [stdout]    |                        move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_FaultKind`
[INFO] [stdout] 51 | pub enum FaultKind {
[INFO] [stdout]    |          --------- `FaultKind` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/threshold_sign.rs:33:39
[INFO] [stdout]    |
[INFO] [stdout] 33 | #[derive(Clone, Eq, PartialEq, Debug, Fail)]
[INFO] [stdout]    |                                       ^---
[INFO] [stdout]    |                                       |
[INFO] [stdout]    |                                       `Fail` is not local
[INFO] [stdout]    |                                       move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_Error`
[INFO] [stdout] 34 | pub enum Error {
[INFO] [stdout]    |          ----- `Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/threshold_sign.rs:33:39
[INFO] [stdout]    |
[INFO] [stdout] 33 | #[derive(Clone, Eq, PartialEq, Debug, Fail)]
[INFO] [stdout]    |                                       ^---
[INFO] [stdout]    |                                       |
[INFO] [stdout]    |                                       `Display` is not local
[INFO] [stdout]    |                                       move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_Error`
[INFO] [stdout] 34 | pub enum Error {
[INFO] [stdout]    |          ----- `Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/threshold_sign.rs:56:24
[INFO] [stdout]    |
[INFO] [stdout] 56 | #[derive(Clone, Debug, Fail, PartialEq)]
[INFO] [stdout]    |                        ^---
[INFO] [stdout]    |                        |
[INFO] [stdout]    |                        `Fail` is not local
[INFO] [stdout]    |                        move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_FaultKind`
[INFO] [stdout] 57 | pub enum FaultKind {
[INFO] [stdout]    |          --------- `FaultKind` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/threshold_sign.rs:56:24
[INFO] [stdout]    |
[INFO] [stdout] 56 | #[derive(Clone, Debug, Fail, PartialEq)]
[INFO] [stdout]    |                        ^---
[INFO] [stdout]    |                        |
[INFO] [stdout]    |                        `Display` is not local
[INFO] [stdout]    |                        move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_FaultKind`
[INFO] [stdout] 57 | pub enum FaultKind {
[INFO] [stdout]    |          --------- `FaultKind` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling crossbeam-channel v0.3.9
[INFO] [stderr]    Compiling parking_lot_core v0.4.0
[INFO] [stderr]    Compiling crossbeam-epoch v0.7.2
[INFO] [stderr]    Compiling crossbeam-deque v0.6.3
[INFO] [stderr]    Compiling parking_lot v0.7.1
[INFO] [stderr]    Compiling integer-sqrt v0.1.5
[INFO] [stderr]    Compiling crossbeam v0.6.0
[INFO] [stderr]    Compiling tempfile v3.13.0
[INFO] [stderr]    Compiling rusty-fork v0.2.2
[INFO] [stderr]    Compiling proptest v0.8.7
[INFO] [stderr]    Compiling hbbft v0.1.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unnecessary parentheses around block return value
[INFO] [stdout]    --> tests/net/proptest.rs:154:9
[INFO] [stdout]     |
[INFO] [stdout] 154 |         (prev.high != self.high || prev.current != self.current)
[INFO] [stdout]     |         ^                                                      ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 154 -         (prev.high != self.high || prev.current != self.current)
[INFO] [stdout] 154 +         prev.high != self.high || prev.current != self.current
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around block return value
[INFO] [stdout]    --> tests/net/proptest.rs:167:9
[INFO] [stdout]     |
[INFO] [stdout] 167 |         (prev.current != self.current || prev.low != self.low)
[INFO] [stdout]     |         ^                                                    ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 167 -         (prev.current != self.current || prev.low != self.low)
[INFO] [stdout] 167 +         prev.current != self.current || prev.low != self.low
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]    --> tests/binary_agreement_mitm.rs:239:26
[INFO] [stdout]     |
[INFO] [stdout] 239 | const NUM_NODES: usize = (NODES_PER_GROUP * 3 + 1);
[INFO] [stdout]     |                          ^                       ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 239 - const NUM_NODES: usize = (NODES_PER_GROUP * 3 + 1);
[INFO] [stdout] 239 + const NUM_NODES: usize = NODES_PER_GROUP * 3 + 1;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around block return value
[INFO] [stdout]    --> tests/net/proptest.rs:154:9
[INFO] [stdout]     |
[INFO] [stdout] 154 |         (prev.high != self.high || prev.current != self.current)
[INFO] [stdout]     |         ^                                                      ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 154 -         (prev.high != self.high || prev.current != self.current)
[INFO] [stdout] 154 +         prev.high != self.high || prev.current != self.current
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around block return value
[INFO] [stdout]    --> tests/net/proptest.rs:167:9
[INFO] [stdout]     |
[INFO] [stdout] 167 |         (prev.current != self.current || prev.low != self.low)
[INFO] [stdout]     |         ^                                                    ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 167 -         (prev.current != self.current || prev.low != self.low)
[INFO] [stdout] 167 +         prev.current != self.current || prev.low != self.low
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around block return value
[INFO] [stdout]    --> tests/net/proptest.rs:154:9
[INFO] [stdout]     |
[INFO] [stdout] 154 |         (prev.high != self.high || prev.current != self.current)
[INFO] [stdout]     |         ^                                                      ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 154 -         (prev.high != self.high || prev.current != self.current)
[INFO] [stdout] 154 +         prev.high != self.high || prev.current != self.current
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around block return value
[INFO] [stdout]    --> tests/net/proptest.rs:167:9
[INFO] [stdout]     |
[INFO] [stdout] 167 |         (prev.current != self.current || prev.low != self.low)
[INFO] [stdout]     |         ^                                                    ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 167 -         (prev.current != self.current || prev.low != self.low)
[INFO] [stdout] 167 +         prev.current != self.current || prev.low != self.low
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around block return value
[INFO] [stdout]    --> tests/net/proptest.rs:154:9
[INFO] [stdout]     |
[INFO] [stdout] 154 |         (prev.high != self.high || prev.current != self.current)
[INFO] [stdout]     |         ^                                                      ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 154 -         (prev.high != self.high || prev.current != self.current)
[INFO] [stdout] 154 +         prev.high != self.high || prev.current != self.current
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around block return value
[INFO] [stdout]    --> tests/net/proptest.rs:167:9
[INFO] [stdout]     |
[INFO] [stdout] 167 |         (prev.current != self.current || prev.low != self.low)
[INFO] [stdout]     |         ^                                                    ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 167 -         (prev.current != self.current || prev.low != self.low)
[INFO] [stdout] 167 +         prev.current != self.current || prev.low != self.low
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around block return value
[INFO] [stdout]    --> tests/net/proptest.rs:154:9
[INFO] [stdout]     |
[INFO] [stdout] 154 |         (prev.high != self.high || prev.current != self.current)
[INFO] [stdout]     |         ^                                                      ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 154 -         (prev.high != self.high || prev.current != self.current)
[INFO] [stdout] 154 +         prev.high != self.high || prev.current != self.current
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around block return value
[INFO] [stdout]    --> tests/net/proptest.rs:167:9
[INFO] [stdout]     |
[INFO] [stdout] 167 |         (prev.current != self.current || prev.low != self.low)
[INFO] [stdout]     |         ^                                                    ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 167 -         (prev.current != self.current || prev.low != self.low)
[INFO] [stdout] 167 +         prev.current != self.current || prev.low != self.low
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around block return value
[INFO] [stdout]    --> tests/net/proptest.rs:154:9
[INFO] [stdout]     |
[INFO] [stdout] 154 |         (prev.high != self.high || prev.current != self.current)
[INFO] [stdout]     |         ^                                                      ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 154 -         (prev.high != self.high || prev.current != self.current)
[INFO] [stdout] 154 +         prev.high != self.high || prev.current != self.current
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around block return value
[INFO] [stdout]    --> tests/net/proptest.rs:167:9
[INFO] [stdout]     |
[INFO] [stdout] 167 |         (prev.current != self.current || prev.low != self.low)
[INFO] [stdout]     |         ^                                                    ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 167 -         (prev.current != self.current || prev.low != self.low)
[INFO] [stdout] 167 +         prev.current != self.current || prev.low != self.low
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]   --> tests/net_dynamic_hb.rs:77:1
[INFO] [stdout]    |
[INFO] [stdout] 77 | /// Proptest wrapper for `do_drop_and_re_add`.
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]    |
[INFO] [stdout]    = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout]    = note: `#[warn(unused_doc_comments)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]   --> tests/binary_agreement.rs:61:1
[INFO] [stdout]    |
[INFO] [stdout] 61 | /// Proptest wrapper for `binary_agreement` that runs the test function on generated configurations.
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rustdoc does not generate documentation for macro invocations
[INFO] [stdout]    |
[INFO] [stdout]    = help: to document an item produced by a macro, the macro must produce the documentation as part of its expansion
[INFO] [stdout]    = note: `#[warn(unused_doc_comments)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around block return value
[INFO] [stdout]    --> tests/net/proptest.rs:154:9
[INFO] [stdout]     |
[INFO] [stdout] 154 |         (prev.high != self.high || prev.current != self.current)
[INFO] [stdout]     |         ^                                                      ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 154 -         (prev.high != self.high || prev.current != self.current)
[INFO] [stdout] 154 +         prev.high != self.high || prev.current != self.current
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around block return value
[INFO] [stdout]    --> tests/net/proptest.rs:167:9
[INFO] [stdout]     |
[INFO] [stdout] 167 |         (prev.current != self.current || prev.low != self.low)
[INFO] [stdout]     |         ^                                                    ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 167 -         (prev.current != self.current || prev.low != self.low)
[INFO] [stdout] 167 +         prev.current != self.current || prev.low != self.low
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around block return value
[INFO] [stdout]    --> tests/net/proptest.rs:154:9
[INFO] [stdout]     |
[INFO] [stdout] 154 |         (prev.high != self.high || prev.current != self.current)
[INFO] [stdout]     |         ^                                                      ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 154 -         (prev.high != self.high || prev.current != self.current)
[INFO] [stdout] 154 +         prev.high != self.high || prev.current != self.current
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around block return value
[INFO] [stdout]    --> tests/net/proptest.rs:167:9
[INFO] [stdout]     |
[INFO] [stdout] 167 |         (prev.current != self.current || prev.low != self.low)
[INFO] [stdout]     |         ^                                                    ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 167 -         (prev.current != self.current || prev.low != self.low)
[INFO] [stdout] 167 +         prev.current != self.current || prev.low != self.low
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around block return value
[INFO] [stdout]    --> tests/net/proptest.rs:154:9
[INFO] [stdout]     |
[INFO] [stdout] 154 |         (prev.high != self.high || prev.current != self.current)
[INFO] [stdout]     |         ^                                                      ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 154 -         (prev.high != self.high || prev.current != self.current)
[INFO] [stdout] 154 +         prev.high != self.high || prev.current != self.current
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around block return value
[INFO] [stdout]    --> tests/net/proptest.rs:167:9
[INFO] [stdout]     |
[INFO] [stdout] 167 |         (prev.current != self.current || prev.low != self.low)
[INFO] [stdout]     |         ^                                                    ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 167 -         (prev.current != self.current || prev.low != self.low)
[INFO] [stdout] 167 +         prev.current != self.current || prev.low != self.low
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]   --> src/subset/subset.rs:25:9
[INFO] [stdout]    |
[INFO] [stdout] 25 |         #[derivative(Debug(format_with = "util::fmt_hex"))] Vec<u8>,
[INFO] [stdout]    |         ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unused `hbbft::Step` in tuple element 1 that must be used
[INFO] [stdout]    --> tests/binary_agreement_mitm.rs:482:9
[INFO] [stdout]     |
[INFO] [stdout] 482 |         net.crank_expect(&mut rng);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: The algorithm step result must be used.
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]    --> tests/binary_agreement_mitm.rs:1:9
[INFO] [stdout]     |
[INFO] [stdout] 1   | #![deny(unused_must_use)]
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `hbbft` (test "binary_agreement_mitm") due to 1 previous error; 3 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/binary_agreement/mod.rs:85:39
[INFO] [stdout]    |
[INFO] [stdout] 85 | #[derive(Clone, Eq, PartialEq, Debug, Fail)]
[INFO] [stdout]    |                                       ^---
[INFO] [stdout]    |                                       |
[INFO] [stdout]    |                                       `Fail` is not local
[INFO] [stdout]    |                                       move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_Error`
[INFO] [stdout] 86 | pub enum Error {
[INFO] [stdout]    |          ----- `Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/binary_agreement/mod.rs:85:39
[INFO] [stdout]    |
[INFO] [stdout] 85 | #[derive(Clone, Eq, PartialEq, Debug, Fail)]
[INFO] [stdout]    |                                       ^---
[INFO] [stdout]    |                                       |
[INFO] [stdout]    |                                       `Display` is not local
[INFO] [stdout]    |                                       move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_Error`
[INFO] [stdout] 86 | pub enum Error {
[INFO] [stdout]    |          ----- `Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/binary_agreement/mod.rs:109:24
[INFO] [stdout]     |
[INFO] [stdout] 109 | #[derive(Clone, Debug, Fail, PartialEq)]
[INFO] [stdout]     |                        ^---
[INFO] [stdout]     |                        |
[INFO] [stdout]     |                        `Fail` is not local
[INFO] [stdout]     |                        move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_FaultKind`
[INFO] [stdout] 110 | pub enum FaultKind {
[INFO] [stdout]     |          --------- `FaultKind` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/binary_agreement/mod.rs:109:24
[INFO] [stdout]     |
[INFO] [stdout] 109 | #[derive(Clone, Debug, Fail, PartialEq)]
[INFO] [stdout]     |                        ^---
[INFO] [stdout]     |                        |
[INFO] [stdout]     |                        `Display` is not local
[INFO] [stdout]     |                        move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_FaultKind`
[INFO] [stdout] 110 | pub enum FaultKind {
[INFO] [stdout]     |          --------- `FaultKind` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> src/broadcast/error.rs:4:35
[INFO] [stdout]   |
[INFO] [stdout] 4 | #[derive(Clone, PartialEq, Debug, Fail)]
[INFO] [stdout]   |                                   ^---
[INFO] [stdout]   |                                   |
[INFO] [stdout]   |                                   `Fail` is not local
[INFO] [stdout]   |                                   move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_Error`
[INFO] [stdout] 5 | pub enum Error {
[INFO] [stdout]   |          ----- `Error` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]   = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> src/broadcast/error.rs:4:35
[INFO] [stdout]   |
[INFO] [stdout] 4 | #[derive(Clone, PartialEq, Debug, Fail)]
[INFO] [stdout]   |                                   ^---
[INFO] [stdout]   |                                   |
[INFO] [stdout]   |                                   `Display` is not local
[INFO] [stdout]   |                                   move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_Error`
[INFO] [stdout] 5 | pub enum Error {
[INFO] [stdout]   |          ----- `Error` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]   = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/broadcast/error.rs:27:24
[INFO] [stdout]    |
[INFO] [stdout] 27 | #[derive(Clone, Debug, Fail, PartialEq)]
[INFO] [stdout]    |                        ^---
[INFO] [stdout]    |                        |
[INFO] [stdout]    |                        `Fail` is not local
[INFO] [stdout]    |                        move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_FaultKind`
[INFO] [stdout] 28 | pub enum FaultKind {
[INFO] [stdout]    |          --------- `FaultKind` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/broadcast/error.rs:27:24
[INFO] [stdout]    |
[INFO] [stdout] 27 | #[derive(Clone, Debug, Fail, PartialEq)]
[INFO] [stdout]    |                        ^---
[INFO] [stdout]    |                        |
[INFO] [stdout]    |                        `Display` is not local
[INFO] [stdout]    |                        move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_FaultKind`
[INFO] [stdout] 28 | pub enum FaultKind {
[INFO] [stdout]    |          --------- `FaultKind` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> src/dynamic_honey_badger/error.rs:8:17
[INFO] [stdout]   |
[INFO] [stdout] 8 | #[derive(Debug, Fail)]
[INFO] [stdout]   |                 ^---
[INFO] [stdout]   |                 |
[INFO] [stdout]   |                 `Fail` is not local
[INFO] [stdout]   |                 move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_Error`
[INFO] [stdout] 9 | pub enum Error {
[INFO] [stdout]   |          ----- `Error` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]   = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> src/dynamic_honey_badger/error.rs:8:17
[INFO] [stdout]   |
[INFO] [stdout] 8 | #[derive(Debug, Fail)]
[INFO] [stdout]   |                 ^---
[INFO] [stdout]   |                 |
[INFO] [stdout]   |                 `Display` is not local
[INFO] [stdout]   |                 move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_Error`
[INFO] [stdout] 9 | pub enum Error {
[INFO] [stdout]   |          ----- `Error` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]   = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/dynamic_honey_badger/error.rs:33:24
[INFO] [stdout]    |
[INFO] [stdout] 33 | #[derive(Clone, Debug, Fail, PartialEq)]
[INFO] [stdout]    |                        ^---
[INFO] [stdout]    |                        |
[INFO] [stdout]    |                        `Fail` is not local
[INFO] [stdout]    |                        move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_FaultKind`
[INFO] [stdout] 34 | pub enum FaultKind {
[INFO] [stdout]    |          --------- `FaultKind` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/dynamic_honey_badger/error.rs:33:24
[INFO] [stdout]    |
[INFO] [stdout] 33 | #[derive(Clone, Debug, Fail, PartialEq)]
[INFO] [stdout]    |                        ^---
[INFO] [stdout]    |                        |
[INFO] [stdout]    |                        `Display` is not local
[INFO] [stdout]    |                        move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_FaultKind`
[INFO] [stdout] 34 | pub enum FaultKind {
[INFO] [stdout]    |          --------- `FaultKind` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/honey_badger/error.rs:9:17
[INFO] [stdout]    |
[INFO] [stdout] 9  | #[derive(Debug, Fail)]
[INFO] [stdout]    |                 ^---
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Fail` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_Error`
[INFO] [stdout] 10 | pub enum Error {
[INFO] [stdout]    |          ----- `Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/honey_badger/error.rs:9:17
[INFO] [stdout]    |
[INFO] [stdout] 9  | #[derive(Debug, Fail)]
[INFO] [stdout]    |                 ^---
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Display` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_Error`
[INFO] [stdout] 10 | pub enum Error {
[INFO] [stdout]    |          ----- `Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/honey_badger/error.rs:35:24
[INFO] [stdout]    |
[INFO] [stdout] 35 | #[derive(Clone, Debug, Fail, PartialEq)]
[INFO] [stdout]    |                        ^---
[INFO] [stdout]    |                        |
[INFO] [stdout]    |                        `Fail` is not local
[INFO] [stdout]    |                        move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_FaultKind`
[INFO] [stdout] 36 | pub enum FaultKind {
[INFO] [stdout]    |          --------- `FaultKind` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/honey_badger/error.rs:35:24
[INFO] [stdout]    |
[INFO] [stdout] 35 | #[derive(Clone, Debug, Fail, PartialEq)]
[INFO] [stdout]    |                        ^---
[INFO] [stdout]    |                        |
[INFO] [stdout]    |                        `Display` is not local
[INFO] [stdout]    |                        move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_FaultKind`
[INFO] [stdout] 36 | pub enum FaultKind {
[INFO] [stdout]    |          --------- `FaultKind` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/queueing_honey_badger/mod.rs:44:17
[INFO] [stdout]    |
[INFO] [stdout] 44 | #[derive(Debug, Fail)]
[INFO] [stdout]    |                 ^---
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Fail` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_Error`
[INFO] [stdout] 45 | pub enum Error {
[INFO] [stdout]    |          ----- `Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/queueing_honey_badger/mod.rs:44:17
[INFO] [stdout]    |
[INFO] [stdout] 44 | #[derive(Debug, Fail)]
[INFO] [stdout]    |                 ^---
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Display` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_Error`
[INFO] [stdout] 45 | pub enum Error {
[INFO] [stdout]    |          ----- `Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> src/sender_queue/error.rs:5:17
[INFO] [stdout]   |
[INFO] [stdout] 5 | #[derive(Debug, Fail)]
[INFO] [stdout]   |                 ^---
[INFO] [stdout]   |                 |
[INFO] [stdout]   |                 `Fail` is not local
[INFO] [stdout]   |                 move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_Error`
[INFO] [stdout] 6 | pub enum Error<E>
[INFO] [stdout]   |          ----- `Error` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]   = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> src/sender_queue/error.rs:5:17
[INFO] [stdout]   |
[INFO] [stdout] 5 | #[derive(Debug, Fail)]
[INFO] [stdout]   |                 ^---
[INFO] [stdout]   |                 |
[INFO] [stdout]   |                 `Display` is not local
[INFO] [stdout]   |                 move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_Error`
[INFO] [stdout] 6 | pub enum Error<E>
[INFO] [stdout]   |          ----- `Error` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]   = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/subset/error.rs:9:35
[INFO] [stdout]    |
[INFO] [stdout] 9  | #[derive(Clone, PartialEq, Debug, Fail)]
[INFO] [stdout]    |                                   ^---
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Fail` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_Error`
[INFO] [stdout] 10 | pub enum Error {
[INFO] [stdout]    |          ----- `Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/subset/error.rs:9:35
[INFO] [stdout]    |
[INFO] [stdout] 9  | #[derive(Clone, PartialEq, Debug, Fail)]
[INFO] [stdout]    |                                   ^---
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Display` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_Error`
[INFO] [stdout] 10 | pub enum Error {
[INFO] [stdout]    |          ----- `Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/subset/error.rs:32:24
[INFO] [stdout]    |
[INFO] [stdout] 32 | #[derive(Clone, Debug, Fail, PartialEq)]
[INFO] [stdout]    |                        ^---
[INFO] [stdout]    |                        |
[INFO] [stdout]    |                        `Fail` is not local
[INFO] [stdout]    |                        move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_FaultKind`
[INFO] [stdout] 33 | pub enum FaultKind {
[INFO] [stdout]    |          --------- `FaultKind` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/subset/error.rs:32:24
[INFO] [stdout]    |
[INFO] [stdout] 32 | #[derive(Clone, Debug, Fail, PartialEq)]
[INFO] [stdout]    |                        ^---
[INFO] [stdout]    |                        |
[INFO] [stdout]    |                        `Display` is not local
[INFO] [stdout]    |                        move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_FaultKind`
[INFO] [stdout] 33 | pub enum FaultKind {
[INFO] [stdout]    |          --------- `FaultKind` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/sync_key_gen.rs:196:39
[INFO] [stdout]     |
[INFO] [stdout] 196 | #[derive(Clone, Eq, PartialEq, Debug, Fail)]
[INFO] [stdout]     |                                       ^---
[INFO] [stdout]     |                                       |
[INFO] [stdout]     |                                       `Fail` is not local
[INFO] [stdout]     |                                       move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_Error`
[INFO] [stdout] 197 | pub enum Error {
[INFO] [stdout]     |          ----- `Error` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/sync_key_gen.rs:196:39
[INFO] [stdout]     |
[INFO] [stdout] 196 | #[derive(Clone, Eq, PartialEq, Debug, Fail)]
[INFO] [stdout]     |                                       ^---
[INFO] [stdout]     |                                       |
[INFO] [stdout]     |                                       `Display` is not local
[INFO] [stdout]     |                                       move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_Error`
[INFO] [stdout] 197 | pub enum Error {
[INFO] [stdout]     |          ----- `Error` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/sync_key_gen.rs:551:45
[INFO] [stdout]     |
[INFO] [stdout] 551 | #[derive(Clone, Copy, Eq, PartialEq, Debug, Fail)]
[INFO] [stdout]     |                                             ^---
[INFO] [stdout]     |                                             |
[INFO] [stdout]     |                                             `Fail` is not local
[INFO] [stdout]     |                                             move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_AckFault`
[INFO] [stdout] 552 | pub enum AckFault {
[INFO] [stdout]     |          -------- `AckFault` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/sync_key_gen.rs:551:45
[INFO] [stdout]     |
[INFO] [stdout] 551 | #[derive(Clone, Copy, Eq, PartialEq, Debug, Fail)]
[INFO] [stdout]     |                                             ^---
[INFO] [stdout]     |                                             |
[INFO] [stdout]     |                                             `Display` is not local
[INFO] [stdout]     |                                             move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_AckFault`
[INFO] [stdout] 552 | pub enum AckFault {
[INFO] [stdout]     |          -------- `AckFault` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/sync_key_gen.rs:571:45
[INFO] [stdout]     |
[INFO] [stdout] 571 | #[derive(Clone, Copy, Eq, PartialEq, Debug, Fail)]
[INFO] [stdout]     |                                             ^---
[INFO] [stdout]     |                                             |
[INFO] [stdout]     |                                             `Fail` is not local
[INFO] [stdout]     |                                             move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_PartFault`
[INFO] [stdout] 572 | pub enum PartFault {
[INFO] [stdout]     |          --------- `PartFault` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/sync_key_gen.rs:571:45
[INFO] [stdout]     |
[INFO] [stdout] 571 | #[derive(Clone, Copy, Eq, PartialEq, Debug, Fail)]
[INFO] [stdout]     |                                             ^---
[INFO] [stdout]     |                                             |
[INFO] [stdout]     |                                             `Display` is not local
[INFO] [stdout]     |                                             move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_PartFault`
[INFO] [stdout] 572 | pub enum PartFault {
[INFO] [stdout]     |          --------- `PartFault` is not local
[INFO] [stdout]     |
[INFO] [stdout]     = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]     = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/threshold_decrypt.rs:27:39
[INFO] [stdout]    |
[INFO] [stdout] 27 | #[derive(Clone, Eq, PartialEq, Debug, Fail)]
[INFO] [stdout]    |                                       ^---
[INFO] [stdout]    |                                       |
[INFO] [stdout]    |                                       `Fail` is not local
[INFO] [stdout]    |                                       move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_Error`
[INFO] [stdout] 28 | pub enum Error {
[INFO] [stdout]    |          ----- `Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/threshold_decrypt.rs:27:39
[INFO] [stdout]    |
[INFO] [stdout] 27 | #[derive(Clone, Eq, PartialEq, Debug, Fail)]
[INFO] [stdout]    |                                       ^---
[INFO] [stdout]    |                                       |
[INFO] [stdout]    |                                       `Display` is not local
[INFO] [stdout]    |                                       move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_Error`
[INFO] [stdout] 28 | pub enum Error {
[INFO] [stdout]    |          ----- `Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/threshold_decrypt.rs:50:24
[INFO] [stdout]    |
[INFO] [stdout] 50 | #[derive(Clone, Debug, Fail, PartialEq)]
[INFO] [stdout]    |                        ^---
[INFO] [stdout]    |                        |
[INFO] [stdout]    |                        `Fail` is not local
[INFO] [stdout]    |                        move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_FaultKind`
[INFO] [stdout] 51 | pub enum FaultKind {
[INFO] [stdout]    |          --------- `FaultKind` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/threshold_decrypt.rs:50:24
[INFO] [stdout]    |
[INFO] [stdout] 50 | #[derive(Clone, Debug, Fail, PartialEq)]
[INFO] [stdout]    |                        ^---
[INFO] [stdout]    |                        |
[INFO] [stdout]    |                        `Display` is not local
[INFO] [stdout]    |                        move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_FaultKind`
[INFO] [stdout] 51 | pub enum FaultKind {
[INFO] [stdout]    |          --------- `FaultKind` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/threshold_sign.rs:33:39
[INFO] [stdout]    |
[INFO] [stdout] 33 | #[derive(Clone, Eq, PartialEq, Debug, Fail)]
[INFO] [stdout]    |                                       ^---
[INFO] [stdout]    |                                       |
[INFO] [stdout]    |                                       `Fail` is not local
[INFO] [stdout]    |                                       move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_Error`
[INFO] [stdout] 34 | pub enum Error {
[INFO] [stdout]    |          ----- `Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/threshold_sign.rs:33:39
[INFO] [stdout]    |
[INFO] [stdout] 33 | #[derive(Clone, Eq, PartialEq, Debug, Fail)]
[INFO] [stdout]    |                                       ^---
[INFO] [stdout]    |                                       |
[INFO] [stdout]    |                                       `Display` is not local
[INFO] [stdout]    |                                       move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_Error`
[INFO] [stdout] 34 | pub enum Error {
[INFO] [stdout]    |          ----- `Error` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/threshold_sign.rs:56:24
[INFO] [stdout]    |
[INFO] [stdout] 56 | #[derive(Clone, Debug, Fail, PartialEq)]
[INFO] [stdout]    |                        ^---
[INFO] [stdout]    |                        |
[INFO] [stdout]    |                        `Fail` is not local
[INFO] [stdout]    |                        move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_FaultKind`
[INFO] [stdout] 57 | pub enum FaultKind {
[INFO] [stdout]    |          --------- `FaultKind` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/threshold_sign.rs:56:24
[INFO] [stdout]    |
[INFO] [stdout] 56 | #[derive(Clone, Debug, Fail, PartialEq)]
[INFO] [stdout]    |                        ^---
[INFO] [stdout]    |                        |
[INFO] [stdout]    |                        `Display` is not local
[INFO] [stdout]    |                        move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_FaultKind`
[INFO] [stdout] 57 | pub enum FaultKind {
[INFO] [stdout]    |          --------- `FaultKind` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `hbbft` (test "subset"); 2 warnings emitted
[INFO] [stderr] 
[INFO] [stderr] Caused by:
[INFO] [stderr]   process didn't exit successfully: `/opt/rustwide/rustup-home/toolchains/nightly-2024-10-28-x86_64-unknown-linux-gnu/bin/rustc --crate-name subset --edition=2018 tests/subset.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts,future-incompat --emit=dep-info,link -C embed-bitcode=no -C debuginfo=2 --test --check-cfg 'cfg(docsrs)' --check-cfg 'cfg(feature, values("no-simd", "use-insecure-test-only-mock-crypto"))' -C metadata=f37371adc7b7e089 -C extra-filename=-f37371adc7b7e089 --out-dir /opt/rustwide/target/debug/deps -L dependency=/opt/rustwide/target/debug/deps --extern bincode=/opt/rustwide/target/debug/deps/libbincode-0b82a916fbf86797.rlib --extern byteorder=/opt/rustwide/target/debug/deps/libbyteorder-921e9eb05e03d6ac.rlib --extern colored=/opt/rustwide/target/debug/deps/libcolored-bb3ac5d1f2a8f44f.rlib --extern crossbeam=/opt/rustwide/target/debug/deps/libcrossbeam-8c53951ae9a5f3de.rlib --extern crossbeam_channel=/opt/rustwide/target/debug/deps/libcrossbeam_channel-ca75714a85432277.rlib --extern derivative=/opt/rustwide/target/debug/deps/libderivative-b037fff94bcaba74.so --extern docopt=/opt/rustwide/target/debug/deps/libdocopt-a5c1f3208969b825.rlib --extern env_logger=/opt/rustwide/target/debug/deps/libenv_logger-ef632cc188204f6c.rlib --extern failure=/opt/rustwide/target/debug/deps/libfailure-b4cfb7d5325c4d60.rlib --extern hbbft=/opt/rustwide/target/debug/deps/libhbbft-54a0cdd65a837f42.rlib --extern hex_fmt=/opt/rustwide/target/debug/deps/libhex_fmt-cfbbf525561c65fc.rlib --extern init_with=/opt/rustwide/target/debug/deps/libinit_with-80edeeb22696753b.rlib --extern integer_sqrt=/opt/rustwide/target/debug/deps/libinteger_sqrt-2170b49f23b5a1d4.rlib --extern itertools=/opt/rustwide/target/debug/deps/libitertools-7dc86ee4dc2db7f3.rlib --extern log=/opt/rustwide/target/debug/deps/liblog-e7e7e8ec9ff686da.rlib --extern proptest=/opt/rustwide/target/debug/deps/libproptest-02a9427ea025c0f3.rlib --extern rand=/opt/rustwide/target/debug/deps/librand-e344d1da71699877.rlib --extern rand_derive=/opt/rustwide/target/debug/deps/librand_derive-a9a722332eae1d90.so --extern rand_xorshift=/opt/rustwide/target/debug/deps/librand_xorshift-dcb47e2e8dfee833.rlib --extern reed_solomon_erasure=/opt/rustwide/target/debug/deps/libreed_solomon_erasure-a8bdb255a3097e87.rlib --extern serde=/opt/rustwide/target/debug/deps/libserde-b63958859b0f8aa7.rlib --extern signifix=/opt/rustwide/target/debug/deps/libsignifix-e3870c453cea465f.rlib --extern threshold_crypto=/opt/rustwide/target/debug/deps/libthreshold_crypto-63f6170a73f116a3.rlib --extern tiny_keccak=/opt/rustwide/target/debug/deps/libtiny_keccak-000da70c8d807dd3.rlib --cap-lints=forbid -Zrandomize-layout -L native=/opt/rustwide/target/debug/build/reed-solomon-erasure-9aa16452bc697aa5/out` (signal: 9, SIGKILL: kill)
[INFO] [stderr] error: could not compile `hbbft` (example "simulation")
[INFO] [stderr] 
[INFO] [stderr] Caused by:
[INFO] [stderr]   process didn't exit successfully: `/opt/rustwide/rustup-home/toolchains/nightly-2024-10-28-x86_64-unknown-linux-gnu/bin/rustc --crate-name simulation --edition=2018 examples/simulation.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts,future-incompat --crate-type bin --emit=dep-info,link -C embed-bitcode=no -C debuginfo=2 --check-cfg 'cfg(docsrs)' --check-cfg 'cfg(feature, values("no-simd", "use-insecure-test-only-mock-crypto"))' -C metadata=d421c7eeca1d7b58 -C extra-filename=-d421c7eeca1d7b58 --out-dir /opt/rustwide/target/debug/examples -L dependency=/opt/rustwide/target/debug/deps --extern bincode=/opt/rustwide/target/debug/deps/libbincode-0b82a916fbf86797.rlib --extern byteorder=/opt/rustwide/target/debug/deps/libbyteorder-921e9eb05e03d6ac.rlib --extern colored=/opt/rustwide/target/debug/deps/libcolored-bb3ac5d1f2a8f44f.rlib --extern crossbeam=/opt/rustwide/target/debug/deps/libcrossbeam-8c53951ae9a5f3de.rlib --extern crossbeam_channel=/opt/rustwide/target/debug/deps/libcrossbeam_channel-ca75714a85432277.rlib --extern derivative=/opt/rustwide/target/debug/deps/libderivative-b037fff94bcaba74.so --extern docopt=/opt/rustwide/target/debug/deps/libdocopt-a5c1f3208969b825.rlib --extern env_logger=/opt/rustwide/target/debug/deps/libenv_logger-ef632cc188204f6c.rlib --extern failure=/opt/rustwide/target/debug/deps/libfailure-b4cfb7d5325c4d60.rlib --extern hbbft=/opt/rustwide/target/debug/deps/libhbbft-54a0cdd65a837f42.rlib --extern hex_fmt=/opt/rustwide/target/debug/deps/libhex_fmt-cfbbf525561c65fc.rlib --extern init_with=/opt/rustwide/target/debug/deps/libinit_with-80edeeb22696753b.rlib --extern integer_sqrt=/opt/rustwide/target/debug/deps/libinteger_sqrt-2170b49f23b5a1d4.rlib --extern itertools=/opt/rustwide/target/debug/deps/libitertools-7dc86ee4dc2db7f3.rlib --extern log=/opt/rustwide/target/debug/deps/liblog-e7e7e8ec9ff686da.rlib --extern proptest=/opt/rustwide/target/debug/deps/libproptest-02a9427ea025c0f3.rlib --extern rand=/opt/rustwide/target/debug/deps/librand-e344d1da71699877.rlib --extern rand_derive=/opt/rustwide/target/debug/deps/librand_derive-a9a722332eae1d90.so --extern rand_xorshift=/opt/rustwide/target/debug/deps/librand_xorshift-dcb47e2e8dfee833.rlib --extern reed_solomon_erasure=/opt/rustwide/target/debug/deps/libreed_solomon_erasure-a8bdb255a3097e87.rlib --extern serde=/opt/rustwide/target/debug/deps/libserde-b63958859b0f8aa7.rlib --extern signifix=/opt/rustwide/target/debug/deps/libsignifix-e3870c453cea465f.rlib --extern threshold_crypto=/opt/rustwide/target/debug/deps/libthreshold_crypto-63f6170a73f116a3.rlib --extern tiny_keccak=/opt/rustwide/target/debug/deps/libtiny_keccak-000da70c8d807dd3.rlib --cap-lints=forbid -Zrandomize-layout -L native=/opt/rustwide/target/debug/build/reed-solomon-erasure-9aa16452bc697aa5/out` (signal: 9, SIGKILL: kill)
[INFO] [stderr] error: could not compile `hbbft` (test "net_dynamic_hb"); 3 warnings emitted
[INFO] [stderr] 
[INFO] [stderr] Caused by:
[INFO] [stderr]   process didn't exit successfully: `/opt/rustwide/rustup-home/toolchains/nightly-2024-10-28-x86_64-unknown-linux-gnu/bin/rustc --crate-name net_dynamic_hb --edition=2018 tests/net_dynamic_hb.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts,future-incompat --emit=dep-info,link -C embed-bitcode=no -C debuginfo=2 --test --check-cfg 'cfg(docsrs)' --check-cfg 'cfg(feature, values("no-simd", "use-insecure-test-only-mock-crypto"))' -C metadata=d47cf55bf8849d46 -C extra-filename=-d47cf55bf8849d46 --out-dir /opt/rustwide/target/debug/deps -L dependency=/opt/rustwide/target/debug/deps --extern bincode=/opt/rustwide/target/debug/deps/libbincode-0b82a916fbf86797.rlib --extern byteorder=/opt/rustwide/target/debug/deps/libbyteorder-921e9eb05e03d6ac.rlib --extern colored=/opt/rustwide/target/debug/deps/libcolored-bb3ac5d1f2a8f44f.rlib --extern crossbeam=/opt/rustwide/target/debug/deps/libcrossbeam-8c53951ae9a5f3de.rlib --extern crossbeam_channel=/opt/rustwide/target/debug/deps/libcrossbeam_channel-ca75714a85432277.rlib --extern derivative=/opt/rustwide/target/debug/deps/libderivative-b037fff94bcaba74.so --extern docopt=/opt/rustwide/target/debug/deps/libdocopt-a5c1f3208969b825.rlib --extern env_logger=/opt/rustwide/target/debug/deps/libenv_logger-ef632cc188204f6c.rlib --extern failure=/opt/rustwide/target/debug/deps/libfailure-b4cfb7d5325c4d60.rlib --extern hbbft=/opt/rustwide/target/debug/deps/libhbbft-54a0cdd65a837f42.rlib --extern hex_fmt=/opt/rustwide/target/debug/deps/libhex_fmt-cfbbf525561c65fc.rlib --extern init_with=/opt/rustwide/target/debug/deps/libinit_with-80edeeb22696753b.rlib --extern integer_sqrt=/opt/rustwide/target/debug/deps/libinteger_sqrt-2170b49f23b5a1d4.rlib --extern itertools=/opt/rustwide/target/debug/deps/libitertools-7dc86ee4dc2db7f3.rlib --extern log=/opt/rustwide/target/debug/deps/liblog-e7e7e8ec9ff686da.rlib --extern proptest=/opt/rustwide/target/debug/deps/libproptest-02a9427ea025c0f3.rlib --extern rand=/opt/rustwide/target/debug/deps/librand-e344d1da71699877.rlib --extern rand_derive=/opt/rustwide/target/debug/deps/librand_derive-a9a722332eae1d90.so --extern rand_xorshift=/opt/rustwide/target/debug/deps/librand_xorshift-dcb47e2e8dfee833.rlib --extern reed_solomon_erasure=/opt/rustwide/target/debug/deps/libreed_solomon_erasure-a8bdb255a3097e87.rlib --extern serde=/opt/rustwide/target/debug/deps/libserde-b63958859b0f8aa7.rlib --extern signifix=/opt/rustwide/target/debug/deps/libsignifix-e3870c453cea465f.rlib --extern threshold_crypto=/opt/rustwide/target/debug/deps/libthreshold_crypto-63f6170a73f116a3.rlib --extern tiny_keccak=/opt/rustwide/target/debug/deps/libtiny_keccak-000da70c8d807dd3.rlib --cap-lints=forbid -Zrandomize-layout -L native=/opt/rustwide/target/debug/build/reed-solomon-erasure-9aa16452bc697aa5/out` (signal: 9, SIGKILL: kill)
[INFO] running `Command { std: "docker" "inspect" "1322d89bc7220fd7365808b34dce4791985a86e5080b30c64f4e5766aec08610", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "1322d89bc7220fd7365808b34dce4791985a86e5080b30c64f4e5766aec08610", kill_on_drop: false }`
[INFO] [stdout] 1322d89bc7220fd7365808b34dce4791985a86e5080b30c64f4e5766aec08610
