[INFO] fetching crate lodestone 0.5.0...
[INFO] checking lodestone-0.5.0 against a5689b034ad287112f709693384a37f1377eb9cc for pr-129249-3
[INFO] extracting crate lodestone 0.5.0 into /workspace/builds/worker-1-tc2/source
[INFO] started tweaking crates.io crate lodestone 0.5.0
[INFO] finished tweaking crates.io crate lodestone 0.5.0
[INFO] tweaked toml for crates.io crate lodestone 0.5.0 written to /workspace/builds/worker-1-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate lodestone 0.5.0 on toolchain a5689b034ad287112f709693384a37f1377eb9cc
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+a5689b034ad287112f709693384a37f1377eb9cc" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+a5689b034ad287112f709693384a37f1377eb9cc" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 201 packages to highest compatible versions
[INFO] [stderr]       Adding reqwest v0.12.28 (available: v0.13.5)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+a5689b034ad287112f709693384a37f1377eb9cc" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:77db811e55d90add9212f6832c23229e3de5f1c1f9905e8cb07319ea15df73ac" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 304e637da20428b408089c40c56d631e830c72f91768ab2dc09eee5bfcc10c86
[INFO] running `Command { std: "docker" "start" "304e637da20428b408089c40c56d631e830c72f91768ab2dc09eee5bfcc10c86", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "304e637da20428b408089c40c56d631e830c72f91768ab2dc09eee5bfcc10c86", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "304e637da20428b408089c40c56d631e830c72f91768ab2dc09eee5bfcc10c86" "/opt/rustwide/cargo-home/bin/cargo" "+a5689b034ad287112f709693384a37f1377eb9cc" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "304e637da20428b408089c40c56d631e830c72f91768ab2dc09eee5bfcc10c86", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-w" "/opt/rustwide/workdir" "--user" "0:0" "304e637da20428b408089c40c56d631e830c72f91768ab2dc09eee5bfcc10c86" "/opt/rustwide/cargo-home/bin/cargo" "+a5689b034ad287112f709693384a37f1377eb9cc" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling zerocopy v0.8.63
[INFO] [stderr]    Compiling syn v3.0.9
[INFO] [stderr]    Compiling siphasher v1.0.4
[INFO] [stderr]    Compiling serde v1.0.229
[INFO] [stderr]    Compiling phf_shared v0.10.0
[INFO] [stderr]     Checking tokio v1.53.3
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]     Checking mac v0.1.1
[INFO] [stderr]    Compiling phf_shared v0.11.3
[INFO] [stderr]     Checking futf v0.1.5
[INFO] [stderr]    Compiling syn v2.0.119
[INFO] [stderr]     Checking precomputed-hash v0.1.1
[INFO] [stderr]     Checking tendril v0.4.3
[INFO] [stderr]     Checking futures-util v0.3.34
[INFO] [stderr]     Checking phf v0.10.1
[INFO] [stderr]    Compiling object v0.37.3
[INFO] [stderr]     Checking gimli v0.32.3
[INFO] [stderr]     Checking string_cache v0.8.9
[INFO] [stderr]     Checking miniz_oxide v0.8.9
[INFO] [stderr]    Compiling synstructure v0.14.0
[INFO] [stderr]     Checking addr2line v0.25.1
[INFO] [stderr]     Checking rustc-demangle v0.1.28
[INFO] [stderr]     Checking zeroize v1.9.1
[INFO] [stderr]     Checking serde_urlencoded v0.7.1
[INFO] [stderr]     Checking rustls-pki-types v1.15.1
[INFO] [stderr]    Compiling zerofrom-derive v0.1.8
[INFO] [stderr]    Compiling yoke-derive v0.8.4
[INFO] [stderr]    Compiling zerovec-derive v0.11.6
[INFO] [stderr]    Compiling displaydoc v0.2.7
[INFO] [stderr]    Compiling openssl-macros v0.1.1
[INFO] [stderr]     Checking tokio-util v0.7.20
[INFO] [stderr]     Checking zerofrom v0.1.8
[INFO] [stderr]     Checking openssl v0.10.81
[INFO] [stderr]     Checking yoke v0.8.3
[INFO] [stderr]    Compiling synstructure v0.12.6
[INFO] [stderr]     Checking zerotrie v0.2.5
[INFO] [stderr]     Checking tower v0.5.3
[INFO] [stderr]     Checking zerovec v0.11.8
[INFO] [stderr]     Checking backtrace v0.3.76
[INFO] [stderr]     Checking h2 v0.4.20
[INFO] [stderr]    Compiling ppv-lite86 v0.2.21
[INFO] [stderr]     Checking bit-set v0.5.3
[INFO] [stderr]     Checking tinystr v0.8.4
[INFO] [stderr]     Checking potential_utf v0.1.6
[INFO] [stderr]     Checking icu_collections v2.3.0
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]     Checking icu_locale_core v2.3.0
[INFO] [stderr]    Compiling html5ever v0.26.0
[INFO] [stderr]    Compiling failure_derive v0.1.8
[INFO] [stderr]    Compiling rand v0.8.8
[INFO] [stderr]     Checking failure v0.1.8
[INFO] [stderr]     Checking icu_provider v2.3.1
[INFO] [stderr]    Compiling phf_generator v0.11.3
[INFO] [stderr]    Compiling phf_generator v0.10.0
[INFO] [stderr]    Compiling phf_codegen v0.10.0
[INFO] [stderr]    Compiling string_cache_codegen v0.5.4
[INFO] [stderr]     Checking icu_properties v2.3.0
[INFO] [stderr]     Checking icu_normalizer v2.3.0
[INFO] [stderr]    Compiling markup5ever v0.11.0
[INFO] [stderr]     Checking hyper v1.12.0
[INFO] [stderr]     Checking native-tls v0.2.18
[INFO] [stderr]     Checking tokio-native-tls v0.3.1
[INFO] [stderr]     Checking idna_adapter v1.2.2
[INFO] [stderr]     Checking idna v1.1.0
[INFO] [stderr]     Checking xml5ever v0.17.0
[INFO] [stderr]     Checking url v2.5.8
[INFO] [stderr]     Checking hyper-util v0.1.21
[INFO] [stderr]     Checking tower-http v0.6.11
[INFO] [stderr]     Checking markup5ever_rcdom v0.2.0
[INFO] [stderr]     Checking select v0.6.1
[INFO] [stderr]     Checking hyper-tls v0.6.0
[INFO] [stderr]     Checking reqwest v0.12.28
[INFO] [stderr]     Checking lodestone v0.5.0 (/opt/rustwide/workdir)
[INFO] [stdout] error: useless conversion to the same type: `String`
[INFO] [stdout]    --> src/model/profile.rs:215:22
[INFO] [stdout]     |
[INFO] [stdout] 215 |             .map(|e| e.into())
[INFO] [stdout]     |                      ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: `#[deny(self_type_conversion)]` on by default
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 215 -             .map(|e| e.into())
[INFO] [stdout] 215 +             .map(|e| e)
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 215 -             .map(|e| e.into())
[INFO] [stdout] 215 +             .map(|e| <String as Into<_>>::into(e))
[INFO] [stdout]     |
[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/model/clan.rs:4:24
[INFO] [stdout]   |
[INFO] [stdout] 4 | #[derive(Clone, 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_ClanParseError`
[INFO] [stdout] 5 | #[fail(display = "Invalid clan string '{}'", _0)]
[INFO] [stdout] 6 | pub struct ClanParseError(String);
[INFO] [stdout]   |            -------------- `ClanParseError` 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/model/clan.rs:4:24
[INFO] [stdout]   |
[INFO] [stdout] 4 | #[derive(Clone, 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_ClanParseError`
[INFO] [stdout] 5 | #[fail(display = "Invalid clan string '{}'", _0)]
[INFO] [stdout] 6 | pub struct ClanParseError(String);
[INFO] [stdout]   |            -------------- `ClanParseError` 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/model/class.rs:5:24
[INFO] [stdout]   |
[INFO] [stdout] 5 | #[derive(Clone, 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_ClassTypeParseError`
[INFO] [stdout] 6 | #[fail(display = "Invalid class type '{}'", _0)]
[INFO] [stdout] 7 | pub struct ClassTypeParseError(String);
[INFO] [stdout]   |            ------------------- `ClassTypeParseError` 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/model/class.rs:5:24
[INFO] [stdout]   |
[INFO] [stdout] 5 | #[derive(Clone, 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_ClassTypeParseError`
[INFO] [stdout] 6 | #[fail(display = "Invalid class type '{}'", _0)]
[INFO] [stdout] 7 | pub struct ClassTypeParseError(String);
[INFO] [stdout]   |            ------------------- `ClassTypeParseError` 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/model/datacenter.rs:5:24
[INFO] [stdout]   |
[INFO] [stdout] 5 | #[derive(Clone, 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_DatacenterParseError`
[INFO] [stdout] 6 | #[fail(display = "Invalid datacenter string '{}'", _0)]
[INFO] [stdout] 7 | pub struct DatacenterParseError(String);
[INFO] [stdout]   |            -------------------- `DatacenterParseError` 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/model/datacenter.rs:5:24
[INFO] [stdout]   |
[INFO] [stdout] 5 | #[derive(Clone, 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_DatacenterParseError`
[INFO] [stdout] 6 | #[fail(display = "Invalid datacenter string '{}'", _0)]
[INFO] [stdout] 7 | pub struct DatacenterParseError(String);
[INFO] [stdout]   |            -------------------- `DatacenterParseError` 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/model/gc.rs:4:24
[INFO] [stdout]   |
[INFO] [stdout] 4 | #[derive(Clone, 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_GrandCompanyParseError`
[INFO] [stdout] 5 | #[fail(display = "Invalid grand company string '{}'", _0)]
[INFO] [stdout] 6 | pub struct GrandCompanyParseError(String);
[INFO] [stdout]   |            ---------------------- `GrandCompanyParseError` 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/model/gc.rs:4:24
[INFO] [stdout]   |
[INFO] [stdout] 4 | #[derive(Clone, 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_GrandCompanyParseError`
[INFO] [stdout] 5 | #[fail(display = "Invalid grand company string '{}'", _0)]
[INFO] [stdout] 6 | pub struct GrandCompanyParseError(String);
[INFO] [stdout]   |            ---------------------- `GrandCompanyParseError` 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/model/gender.rs:4:24
[INFO] [stdout]   |
[INFO] [stdout] 4 | #[derive(Clone, 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_GenderParseError`
[INFO] [stdout] 5 | #[fail(display = "Invalid gender string '{}'", _0)]
[INFO] [stdout] 6 | pub struct GenderParseError(String);
[INFO] [stdout]   |            ---------------- `GenderParseError` 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/model/gender.rs:4:24
[INFO] [stdout]   |
[INFO] [stdout] 4 | #[derive(Clone, 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_GenderParseError`
[INFO] [stdout] 5 | #[fail(display = "Invalid gender string '{}'", _0)]
[INFO] [stdout] 6 | pub struct GenderParseError(String);
[INFO] [stdout]   |            ---------------- `GenderParseError` 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/model/language.rs:4:24
[INFO] [stdout]   |
[INFO] [stdout] 4 | #[derive(Clone, 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_LanguageParseError`
[INFO] [stdout] 5 | #[fail(display = "Invalid language string '{}'", _0)]
[INFO] [stdout] 6 | pub struct LanguageParseError(String);
[INFO] [stdout]   |            ------------------ `LanguageParseError` 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/model/language.rs:4:24
[INFO] [stdout]   |
[INFO] [stdout] 4 | #[derive(Clone, 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_LanguageParseError`
[INFO] [stdout] 5 | #[fail(display = "Invalid language string '{}'", _0)]
[INFO] [stdout] 6 | pub struct LanguageParseError(String);
[INFO] [stdout]   |            ------------------ `LanguageParseError` 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/model/profile.rs:19:10
[INFO] [stdout]    |
[INFO] [stdout] 19 | #[derive(Fail, Debug)]
[INFO] [stdout]    |          ^---
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `Fail` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_SearchError`
[INFO] [stdout] 20 | pub enum SearchError {
[INFO] [stdout]    |          ----------- `SearchError` 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/model/profile.rs:19:10
[INFO] [stdout]    |
[INFO] [stdout] 19 | #[derive(Fail, Debug)]
[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_SearchError`
[INFO] [stdout] 20 | pub enum SearchError {
[INFO] [stdout]    |          ----------- `SearchError` 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/model/race.rs:4:24
[INFO] [stdout]   |
[INFO] [stdout] 4 | #[derive(Clone, 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_RaceParseError`
[INFO] [stdout] 5 | #[fail(display = "Invalid race string '{}'", _0)]
[INFO] [stdout] 6 | pub struct RaceParseError(String);
[INFO] [stdout]   |            -------------- `RaceParseError` 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/model/race.rs:4:24
[INFO] [stdout]   |
[INFO] [stdout] 4 | #[derive(Clone, 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_RaceParseError`
[INFO] [stdout] 5 | #[fail(display = "Invalid race string '{}'", _0)]
[INFO] [stdout] 6 | pub struct RaceParseError(String);
[INFO] [stdout]   |            -------------- `RaceParseError` 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/model/server.rs:5:24
[INFO] [stdout]   |
[INFO] [stdout] 5 | #[derive(Clone, 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_ServerParseError`
[INFO] [stdout] 6 | #[fail(display = "Invalid server string '{}'", _0)]
[INFO] [stdout] 7 | pub struct ServerParseError(String);
[INFO] [stdout]   |            ---------------- `ServerParseError` 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/model/server.rs:5:24
[INFO] [stdout]   |
[INFO] [stdout] 5 | #[derive(Clone, 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_ServerParseError`
[INFO] [stdout] 6 | #[fail(display = "Invalid server string '{}'", _0)]
[INFO] [stdout] 7 | pub struct ServerParseError(String);
[INFO] [stdout]   |            ---------------- `ServerParseError` 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 `lodestone` (lib) due to 1 previous error; 18 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] error: useless conversion to the same type: `String`
[INFO] [stdout]    --> src/model/profile.rs:215:22
[INFO] [stdout]     |
[INFO] [stdout] 215 |             .map(|e| e.into())
[INFO] [stdout]     |                      ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: `#[deny(self_type_conversion)]` on by default
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 215 -             .map(|e| e.into())
[INFO] [stdout] 215 +             .map(|e| e)
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 215 -             .map(|e| e.into())
[INFO] [stdout] 215 +             .map(|e| <String as Into<_>>::into(e))
[INFO] [stdout]     |
[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/model/clan.rs:4:24
[INFO] [stdout]   |
[INFO] [stdout] 4 | #[derive(Clone, 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_ClanParseError`
[INFO] [stdout] 5 | #[fail(display = "Invalid clan string '{}'", _0)]
[INFO] [stdout] 6 | pub struct ClanParseError(String);
[INFO] [stdout]   |            -------------- `ClanParseError` 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/model/clan.rs:4:24
[INFO] [stdout]   |
[INFO] [stdout] 4 | #[derive(Clone, 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_ClanParseError`
[INFO] [stdout] 5 | #[fail(display = "Invalid clan string '{}'", _0)]
[INFO] [stdout] 6 | pub struct ClanParseError(String);
[INFO] [stdout]   |            -------------- `ClanParseError` 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/model/class.rs:5:24
[INFO] [stdout]   |
[INFO] [stdout] 5 | #[derive(Clone, 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_ClassTypeParseError`
[INFO] [stdout] 6 | #[fail(display = "Invalid class type '{}'", _0)]
[INFO] [stdout] 7 | pub struct ClassTypeParseError(String);
[INFO] [stdout]   |            ------------------- `ClassTypeParseError` 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/model/class.rs:5:24
[INFO] [stdout]   |
[INFO] [stdout] 5 | #[derive(Clone, 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_ClassTypeParseError`
[INFO] [stdout] 6 | #[fail(display = "Invalid class type '{}'", _0)]
[INFO] [stdout] 7 | pub struct ClassTypeParseError(String);
[INFO] [stdout]   |            ------------------- `ClassTypeParseError` 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/model/datacenter.rs:5:24
[INFO] [stdout]   |
[INFO] [stdout] 5 | #[derive(Clone, 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_DatacenterParseError`
[INFO] [stdout] 6 | #[fail(display = "Invalid datacenter string '{}'", _0)]
[INFO] [stdout] 7 | pub struct DatacenterParseError(String);
[INFO] [stdout]   |            -------------------- `DatacenterParseError` 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/model/datacenter.rs:5:24
[INFO] [stdout]   |
[INFO] [stdout] 5 | #[derive(Clone, 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_DatacenterParseError`
[INFO] [stdout] 6 | #[fail(display = "Invalid datacenter string '{}'", _0)]
[INFO] [stdout] 7 | pub struct DatacenterParseError(String);
[INFO] [stdout]   |            -------------------- `DatacenterParseError` 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/model/gc.rs:4:24
[INFO] [stdout]   |
[INFO] [stdout] 4 | #[derive(Clone, 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_GrandCompanyParseError`
[INFO] [stdout] 5 | #[fail(display = "Invalid grand company string '{}'", _0)]
[INFO] [stdout] 6 | pub struct GrandCompanyParseError(String);
[INFO] [stdout]   |            ---------------------- `GrandCompanyParseError` 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/model/gc.rs:4:24
[INFO] [stdout]   |
[INFO] [stdout] 4 | #[derive(Clone, 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_GrandCompanyParseError`
[INFO] [stdout] 5 | #[fail(display = "Invalid grand company string '{}'", _0)]
[INFO] [stdout] 6 | pub struct GrandCompanyParseError(String);
[INFO] [stdout]   |            ---------------------- `GrandCompanyParseError` 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/model/gender.rs:4:24
[INFO] [stdout]   |
[INFO] [stdout] 4 | #[derive(Clone, 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_GenderParseError`
[INFO] [stdout] 5 | #[fail(display = "Invalid gender string '{}'", _0)]
[INFO] [stdout] 6 | pub struct GenderParseError(String);
[INFO] [stdout]   |            ---------------- `GenderParseError` 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/model/gender.rs:4:24
[INFO] [stdout]   |
[INFO] [stdout] 4 | #[derive(Clone, 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_GenderParseError`
[INFO] [stdout] 5 | #[fail(display = "Invalid gender string '{}'", _0)]
[INFO] [stdout] 6 | pub struct GenderParseError(String);
[INFO] [stdout]   |            ---------------- `GenderParseError` 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/model/language.rs:4:24
[INFO] [stdout]   |
[INFO] [stdout] 4 | #[derive(Clone, 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_LanguageParseError`
[INFO] [stdout] 5 | #[fail(display = "Invalid language string '{}'", _0)]
[INFO] [stdout] 6 | pub struct LanguageParseError(String);
[INFO] [stdout]   |            ------------------ `LanguageParseError` 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/model/language.rs:4:24
[INFO] [stdout]   |
[INFO] [stdout] 4 | #[derive(Clone, 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_LanguageParseError`
[INFO] [stdout] 5 | #[fail(display = "Invalid language string '{}'", _0)]
[INFO] [stdout] 6 | pub struct LanguageParseError(String);
[INFO] [stdout]   |            ------------------ `LanguageParseError` 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/model/profile.rs:19:10
[INFO] [stdout]    |
[INFO] [stdout] 19 | #[derive(Fail, Debug)]
[INFO] [stdout]    |          ^---
[INFO] [stdout]    |          |
[INFO] [stdout]    |          `Fail` is not local
[INFO] [stdout]    |          move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_SearchError`
[INFO] [stdout] 20 | pub enum SearchError {
[INFO] [stdout]    |          ----------- `SearchError` 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/model/profile.rs:19:10
[INFO] [stdout]    |
[INFO] [stdout] 19 | #[derive(Fail, Debug)]
[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_SearchError`
[INFO] [stdout] 20 | pub enum SearchError {
[INFO] [stdout]    |          ----------- `SearchError` 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/model/race.rs:4:24
[INFO] [stdout]   |
[INFO] [stdout] 4 | #[derive(Clone, 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_RaceParseError`
[INFO] [stdout] 5 | #[fail(display = "Invalid race string '{}'", _0)]
[INFO] [stdout] 6 | pub struct RaceParseError(String);
[INFO] [stdout]   |            -------------- `RaceParseError` 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/model/race.rs:4:24
[INFO] [stdout]   |
[INFO] [stdout] 4 | #[derive(Clone, 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_RaceParseError`
[INFO] [stdout] 5 | #[fail(display = "Invalid race string '{}'", _0)]
[INFO] [stdout] 6 | pub struct RaceParseError(String);
[INFO] [stdout]   |            -------------- `RaceParseError` 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/model/server.rs:5:24
[INFO] [stdout]   |
[INFO] [stdout] 5 | #[derive(Clone, 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_ServerParseError`
[INFO] [stdout] 6 | #[fail(display = "Invalid server string '{}'", _0)]
[INFO] [stdout] 7 | pub struct ServerParseError(String);
[INFO] [stdout]   |            ---------------- `ServerParseError` 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/model/server.rs:5:24
[INFO] [stdout]   |
[INFO] [stdout] 5 | #[derive(Clone, 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_ServerParseError`
[INFO] [stdout] 6 | #[fail(display = "Invalid server string '{}'", _0)]
[INFO] [stdout] 7 | pub struct ServerParseError(String);
[INFO] [stdout]   |            ---------------- `ServerParseError` 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 `lodestone` (lib test) due to 1 previous error; 18 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "304e637da20428b408089c40c56d631e830c72f91768ab2dc09eee5bfcc10c86", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "304e637da20428b408089c40c56d631e830c72f91768ab2dc09eee5bfcc10c86", kill_on_drop: false }`
[INFO] [stdout] 304e637da20428b408089c40c56d631e830c72f91768ab2dc09eee5bfcc10c86
