[INFO] fetching crate howtocards 0.1.3...
[INFO] testing howtocards-0.1.3 against try#33835004928d3bf65db4d4712e1330766263b0bd for pr-155739
[INFO] extracting crate howtocards 0.1.3 into /workspace/builds/worker-1-tc2/source
[INFO] started tweaking crates.io crate howtocards 0.1.3
[INFO] finished tweaking crates.io crate howtocards 0.1.3
[INFO] tweaked toml for crates.io crate howtocards 0.1.3 written to /workspace/builds/worker-1-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate howtocards 0.1.3 on toolchain 33835004928d3bf65db4d4712e1330766263b0bd
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+33835004928d3bf65db4d4712e1330766263b0bd" "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" "+33835004928d3bf65db4d4712e1330766263b0bd" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]      Locking 286 packages to latest compatible versions
[INFO] [stderr]       Adding actix v0.7.9 (available: v0.13.5)
[INFO] [stderr]       Adding actix-web v0.7.19 (available: v4.13.0)
[INFO] [stderr]       Adding diesel v1.4.8 (available: v2.3.9)
[INFO] [stderr]       Adding dotenv v0.13.0 (available: v0.15.0)
[INFO] [stderr]       Adding env_logger v0.5.13 (available: v0.11.10)
[INFO] [stderr]       Adding futures v0.1.31 (available: v0.3.32)
[INFO] [stderr]       Adding notify-rust v3.6.3 (available: v4.17.0)
[INFO] [stderr]       Adding ron v0.2.2 (available: v0.12.1)
[INFO] [stderr]       Adding sha2 v0.7.1 (available: v0.11.0)
[INFO] [stderr]       Adding subtle v2.4.1 (available: v2.6.1)
[INFO] [stderr]       Adding uuid v0.7.4 (available: v1.23.1)
[INFO] [stderr]       Adding wasi v0.10.0+wasi-snapshot-preview1 (available: v0.10.2+wasi-snapshot-preview1)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+33835004928d3bf65db4d4712e1330766263b0bd" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: `package.edition` is unspecified, defaulting to `2015` while the latest is `2024`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+33835004928d3bf65db4d4712e1330766263b0bd" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] d54cc5db149f61f86e28a4546d54d869ac272d9ae032473a73ac0ff686f1d24b
[INFO] running `Command { std: "docker" "start" "-a" "d54cc5db149f61f86e28a4546d54d869ac272d9ae032473a73ac0ff686f1d24b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "d54cc5db149f61f86e28a4546d54d869ac272d9ae032473a73ac0ff686f1d24b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d54cc5db149f61f86e28a4546d54d869ac272d9ae032473a73ac0ff686f1d24b", kill_on_drop: false }`
[INFO] [stdout] d54cc5db149f61f86e28a4546d54d869ac272d9ae032473a73ac0ff686f1d24b
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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" "-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+33835004928d3bf65db4d4712e1330766263b0bd" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] c3ea19b202aea2899190f158b08d7946732c3100ec4790478f775e76cfb36add
[INFO] running `Command { std: "docker" "start" "-a" "c3ea19b202aea2899190f158b08d7946732c3100ec4790478f775e76cfb36add", kill_on_drop: false }`
[INFO] [stderr] warning: `package.edition` is unspecified, defaulting to `2015` while the latest is `2024`
[INFO] [stderr]    Compiling libc v0.2.186
[INFO] [stderr]    Compiling semver-parser v0.7.0
[INFO] [stderr]    Compiling maybe-uninit v2.0.0
[INFO] [stderr]    Compiling futures v0.1.31
[INFO] [stderr]    Compiling log v0.4.29
[INFO] [stderr]    Compiling typenum v1.20.0
[INFO] [stderr]    Compiling crossbeam-utils v0.7.2
[INFO] [stderr]    Compiling generic-array v0.14.9
[INFO] [stderr]    Compiling memchr v2.8.0
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling autocfg v0.1.8
[INFO] [stderr]    Compiling encoding_index_tests v0.1.4
[INFO] [stderr]    Compiling lock_api v0.3.4
[INFO] [stderr]    Compiling memoffset v0.5.6
[INFO] [stderr]    Compiling simd-adler32 v0.3.9
[INFO] [stderr]    Compiling tinyvec v1.11.0
[INFO] [stderr]    Compiling crossbeam-epoch v0.8.2
[INFO] [stderr]    Compiling failure_derive v0.1.8
[INFO] [stderr]    Compiling semver v0.9.0
[INFO] [stderr]    Compiling miniz_oxide v0.8.9
[INFO] [stderr]    Compiling unicode-xid v0.2.6
[INFO] [stderr]    Compiling rustc_version v0.2.3
[INFO] [stderr]    Compiling object v0.37.3
[INFO] [stderr]    Compiling encoding-index-japanese v1.20141219.5
[INFO] [stderr]    Compiling encoding-index-singlebyte v1.20141219.5
[INFO] [stderr]    Compiling unicode-normalization v0.1.25
[INFO] [stderr]    Compiling encoding-index-simpchinese v1.20141219.5
[INFO] [stderr]    Compiling encoding-index-korean v1.20141219.5
[INFO] [stderr]    Compiling encoding-index-tradchinese v1.20141219.5
[INFO] [stderr]    Compiling smallvec v0.6.14
[INFO] [stderr]    Compiling parking_lot_core v0.6.3
[INFO] [stderr]    Compiling parking_lot v0.9.0
[INFO] [stderr]    Compiling rand_pcg v0.1.2
[INFO] [stderr]    Compiling rand_chacha v0.1.1
[INFO] [stderr]    Compiling unicode-bidi v0.3.18
[INFO] [stderr]    Compiling subtle v2.4.1
[INFO] [stderr]    Compiling version_check v0.1.5
[INFO] [stderr]    Compiling matches v0.1.10
[INFO] [stderr]    Compiling tokio-sync v0.1.8
[INFO] [stderr]    Compiling encoding v0.2.33
[INFO] [stderr]    Compiling rand v0.6.5
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]    Compiling proc-macro2 v0.4.30
[INFO] [stderr]    Compiling tokio-executor v0.1.10
[INFO] [stderr]    Compiling percent-encoding v1.0.1
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling crossbeam-queue v0.2.3
[INFO] [stderr]    Compiling tokio-timer v0.2.13
[INFO] [stderr]    Compiling rand_hc v0.1.0
[INFO] [stderr]    Compiling rand_xorshift v0.1.1
[INFO] [stderr]    Compiling rand_isaac v0.1.1
[INFO] [stderr]    Compiling idna v0.1.5
[INFO] [stderr]    Compiling crossbeam-deque v0.7.4
[INFO] [stderr]    Compiling rand_jitter v0.1.4
[INFO] [stderr]    Compiling quick-error v1.2.3
[INFO] [stderr]    Compiling unicode-xid v0.1.0
[INFO] [stderr]    Compiling cipher v0.2.5
[INFO] [stderr]    Compiling nom v4.2.3
[INFO] [stderr]    Compiling parking_lot_core v0.4.0
[INFO] [stderr]    Compiling stable_deref_trait v1.2.1
[INFO] [stderr]    Compiling syn v0.15.44
[INFO] [stderr]    Compiling match_cfg v0.1.0
[INFO] [stderr]    Compiling cc v1.2.62
[INFO] [stderr]    Compiling owning_ref v0.4.1
[INFO] [stderr]    Compiling digest v0.9.0
[INFO] [stderr]    Compiling universal-hash v0.4.1
[INFO] [stderr]    Compiling tokio-current-thread v0.1.7
[INFO] [stderr]    Compiling aho-corasick v1.1.4
[INFO] [stderr]    Compiling scopeguard v0.3.3
[INFO] [stderr]    Compiling linked-hash-map v0.5.6
[INFO] [stderr]    Compiling cpuid-bool v0.2.0
[INFO] [stderr]    Compiling pkg-config v0.3.33
[INFO] [stderr]    Compiling polyval v0.4.5
[INFO] [stderr]    Compiling aes-soft v0.6.4
[INFO] [stderr]    Compiling lock_api v0.1.5
[INFO] [stderr]    Compiling crypto-mac v0.10.1
[INFO] [stderr]    Compiling lru-cache v0.1.2
[INFO] [stderr]    Compiling indexmap v1.9.3
[INFO] [stderr]    Compiling crossbeam-utils v0.6.6
[INFO] [stderr]    Compiling itoa v0.4.8
[INFO] [stderr]    Compiling unicase v2.9.0
[INFO] [stderr]    Compiling url v1.7.2
[INFO] [stderr]    Compiling quote v0.6.13
[INFO] [stderr]    Compiling aes v0.6.0
[INFO] [stderr]    Compiling hmac v0.10.1
[INFO] [stderr]    Compiling mime_guess v2.0.5
[INFO] [stderr]    Compiling ghash v0.3.1
[INFO] [stderr]    Compiling ctr v0.6.0
[INFO] [stderr]    Compiling block-buffer v0.9.0
[INFO] [stderr]    Compiling aead v0.3.2
[INFO] [stderr]    Compiling v_htmlescape v0.4.5
[INFO] [stderr]    Compiling hashbrown v0.12.3
[INFO] [stderr]    Compiling pq-sys v0.4.8
[INFO] [stderr]    Compiling libdbus-sys v0.2.7
[INFO] [stderr]    Compiling sha2 v0.9.9
[INFO] [stderr]    Compiling iovec v0.1.4
[INFO] [stderr]    Compiling num_cpus v1.17.0
[INFO] [stderr]    Compiling net2 v0.2.39
[INFO] [stderr]    Compiling rand_os v0.1.3
[INFO] [stderr]    Compiling bytes v0.4.12
[INFO] [stderr]    Compiling rand v0.5.6
[INFO] [stderr]    Compiling mio v0.6.23
[INFO] [stderr]    Compiling tokio-io v0.1.13
[INFO] [stderr]    Compiling tokio-threadpool v0.1.18
[INFO] [stderr]    Compiling socket2 v0.3.19
[INFO] [stderr]    Compiling getrandom v0.2.17
[INFO] [stderr]    Compiling hostname v0.3.1
[INFO] [stderr]    Compiling errno v0.3.14
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling resolv-conf v0.6.3
[INFO] [stderr]    Compiling brotli-sys v0.3.2
[INFO] [stderr]    Compiling signal-hook-registry v1.4.8
[INFO] [stderr]    Compiling regex-automata v0.4.14
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling tokio-codec v0.1.2
[INFO] [stderr]    Compiling crossbeam-channel v0.3.9
[INFO] [stderr]    Compiling tokio-fs v0.1.7
[INFO] [stderr]    Compiling parking_lot v0.12.5
[INFO] [stderr]    Compiling rand v0.8.6
[INFO] [stderr]    Compiling tokio-reactor v0.1.12
[INFO] [stderr]    Compiling mio-uds v0.6.8
[INFO] [stderr]    Compiling parking_lot v0.7.1
[INFO] [stderr]    Compiling scheduled-thread-pool v0.2.7
[INFO] [stderr]    Compiling string v0.2.1
[INFO] [stderr]    Compiling http v0.1.21
[INFO] [stderr]    Compiling time v0.1.45
[INFO] [stderr]    Compiling aes-gcm v0.8.0
[INFO] [stderr]    Compiling hkdf v0.10.0
[INFO] [stderr]    Compiling actix-web v0.7.19
[INFO] [stderr]    Compiling generic-array v0.9.1
[INFO] [stderr]    Compiling tokio-udp v0.1.6
[INFO] [stderr]    Compiling tokio-tcp v0.1.4
[INFO] [stderr]    Compiling tokio-uds v0.2.7
[INFO] [stderr]    Compiling backtrace v0.3.76
[INFO] [stderr]    Compiling tokio-signal v0.2.9
[INFO] [stderr]    Compiling tower-service v0.1.0
[INFO] [stderr]    Compiling byte-tools v0.2.0
[INFO] [stderr]    Compiling dtoa v0.4.8
[INFO] [stderr]    Compiling sha1 v0.6.1
[INFO] [stderr]    Compiling tokio v0.1.22
[INFO] [stderr]    Compiling block-buffer v0.3.3
[INFO] [stderr]    Compiling cookie v0.11.5
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]    Compiling digest v0.7.6
[INFO] [stderr]    Compiling flate2 v1.1.9
[INFO] [stderr]    Compiling r2d2 v0.8.10
[INFO] [stderr]    Compiling dbus v0.6.5
[INFO] [stderr]    Compiling futures-cpupool v0.1.8
[INFO] [stderr]    Compiling atty v0.2.14
[INFO] [stderr]    Compiling synstructure v0.12.6
[INFO] [stderr]    Compiling humantime v1.3.0
[INFO] [stderr]    Compiling base64 v0.10.1
[INFO] [stderr]    Compiling fake-simd v0.1.2
[INFO] [stderr]    Compiling language-tags v0.2.2
[INFO] [stderr]    Compiling lazycell v1.3.0
[INFO] [stderr]    Compiling sha2 v0.7.1
[INFO] [stderr]    Compiling h2 v0.1.26
[INFO] [stderr]    Compiling actix_derive v0.3.2
[INFO] [stderr]    Compiling regex v1.12.3
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling env_logger v0.5.13
[INFO] [stderr]    Compiling notify-rust v3.6.3
[INFO] [stderr]    Compiling v_escape_derive v0.5.6
[INFO] [stderr]    Compiling diesel_derives v1.4.1
[INFO] [stderr]    Compiling failure v0.1.8
[INFO] [stderr]    Compiling v_escape v0.7.4
[INFO] [stderr]    Compiling trust-dns-proto v0.6.3
[INFO] [stderr]    Compiling trust-dns-proto v0.5.0
[INFO] [stderr]    Compiling dotenv v0.13.0
[INFO] [stderr]    Compiling diesel v1.4.8
[INFO] [stderr]    Compiling trust-dns-resolver v0.10.3
[INFO] [stderr]    Compiling brotli2 v0.3.2
[INFO] [stderr]    Compiling uuid v0.7.4
[INFO] [stderr]    Compiling serde_urlencoded v0.5.5
[INFO] [stderr]    Compiling ron v0.2.2
[INFO] [stderr]    Compiling actix v0.7.9
[INFO] [stderr]    Compiling actix-net v0.2.6
[INFO] [stderr]    Compiling howtocards v0.1.3 (/opt/rustwide/workdir)
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/auth.rs:25:22
[INFO] [stdout]    |
[INFO] [stdout] 25 |         for cause in Fail::iter_chain(fail) {
[INFO] [stdout]    |                      ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 25 |         for cause in <dyn Fail>::iter_chain(fail) {
[INFO] [stdout]    |                      ++++     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/db/token.rs:37:21
[INFO] [stdout]    |
[INFO] [stdout] 37 |                 let mut tokens = self.by_user_id.get_mut(user_id).unwrap();
[INFO] [stdout]    |                     ----^^^^^^
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) 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/auth.rs:40:10
[INFO] [stdout]    |
[INFO] [stdout] 40 | #[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_AuthError`
[INFO] [stdout] 41 | pub enum AuthError {
[INFO] [stdout]    |          --------- `AuthError` 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/auth.rs:40:10
[INFO] [stdout]    |
[INFO] [stdout] 40 | #[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_AuthError`
[INFO] [stdout] 41 | pub enum AuthError {
[INFO] [stdout]    |          --------- `AuthError` 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/db/mod.rs:31:17
[INFO] [stdout]    |
[INFO] [stdout] 31 | #[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_DatabaseError`
[INFO] [stdout] 32 | pub enum DatabaseError {
[INFO] [stdout]    |          ------------- `DatabaseError` 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/db/mod.rs:31:17
[INFO] [stdout]    |
[INFO] [stdout] 31 | #[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_DatabaseError`
[INFO] [stdout] 32 | pub enum DatabaseError {
[INFO] [stdout]    |          ------------- `DatabaseError` 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/handlers/account/create.rs:16:10
[INFO] [stdout]    |
[INFO] [stdout] 16 | #[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_AccountCreateError`
[INFO] [stdout] 17 | pub enum AccountCreateError {
[INFO] [stdout]    |          ------------------ `AccountCreateError` 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/handlers/account/create.rs:16:10
[INFO] [stdout]    |
[INFO] [stdout] 16 | #[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_AccountCreateError`
[INFO] [stdout] 17 | pub enum AccountCreateError {
[INFO] [stdout]    |          ------------------ `AccountCreateError` 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/handlers/account/login.rs:16:17
[INFO] [stdout]    |
[INFO] [stdout] 16 | #[derive(Debug, Fail, Serialize)]
[INFO] [stdout]    |                 ^---
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Fail` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_SessionCreateError`
[INFO] [stdout] 17 | pub enum SessionCreateError {
[INFO] [stdout]    |          ------------------ `SessionCreateError` 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/handlers/account/login.rs:16:17
[INFO] [stdout]    |
[INFO] [stdout] 16 | #[derive(Debug, Fail, Serialize)]
[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_SessionCreateError`
[INFO] [stdout] 17 | pub enum SessionCreateError {
[INFO] [stdout]    |          ------------------ `SessionCreateError` 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: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]   --> src/handlers/account/login.rs:61:60
[INFO] [stdout]    |
[INFO] [stdout] 61 |             .filter(users::password.eq(new_account.password.clone()))
[INFO] [stdout]    |                                                            ^^^^^^^^ help: remove this redundant call
[INFO] [stdout]    |
[INFO] [stdout]    = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed
[INFO] [stdout]    = note: `#[warn(noop_method_call)]` 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/models.rs:7:10
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[derive(Queryable, Serialize, Deserialize, Associations, Identifiable, Debug)]
[INFO] [stdout]   |          ^--------
[INFO] [stdout]   |          |
[INFO] [stdout]   |          `Queryable` is not local
[INFO] [stdout]   |          move the `impl` block outside of this function `_impl_queryable_for_user`
[INFO] [stdout] 8 | pub struct User {
[INFO] [stdout]   |            ---- `User` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Queryable` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Queryable` may come from an old version of the `diesel_derives` crate, try updating your dependency with `cargo update -p diesel_derives`
[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: this warning originates in the derive macro `Queryable` (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/models.rs:7:59
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[derive(Queryable, Serialize, Deserialize, Associations, Identifiable, Debug)]
[INFO] [stdout]   |                                                           ^-----------
[INFO] [stdout]   |                                                           |
[INFO] [stdout]   |                                                           `HasTable` is not local
[INFO] [stdout]   |                                                           move the `impl` block outside of this function `_impl_identifiable_for_user`
[INFO] [stdout] 8 | pub struct User {
[INFO] [stdout]   |            ---- `User` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Identifiable` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Identifiable` may come from an old version of the `diesel_derives` crate, try updating your dependency with `cargo update -p diesel_derives`
[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: this warning originates in the derive macro `Identifiable` (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/models.rs:7:59
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[derive(Queryable, Serialize, Deserialize, Associations, Identifiable, Debug)]
[INFO] [stdout]   |                                                           ^^^^^^^^^^^^
[INFO] [stdout]   |                                                           |
[INFO] [stdout]   |                                                           `Identifiable` is not local
[INFO] [stdout]   |                                                           move the `impl` block outside of this function `_impl_identifiable_for_user`
[INFO] [stdout] 8 | pub struct User {
[INFO] [stdout]   |            ---- `User` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Identifiable` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Identifiable` may come from an old version of the `diesel_derives` crate, try updating your dependency with `cargo update -p diesel_derives`
[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: this warning originates in the derive macro `Identifiable` (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/models.rs:14:23
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive(Deserialize, Insertable, Queryable)]
[INFO] [stdout]    |                       ^---------
[INFO] [stdout]    |                       |
[INFO] [stdout]    |                       `Insertable` is not local
[INFO] [stdout]    |                       `table` is not local
[INFO] [stdout]    |                       move the `impl` block outside of this function `_impl_insertable_for_usernew`
[INFO] [stdout] 15 | #[table_name = "users"]
[INFO] [stdout] 16 | pub struct UserNew<'a> {
[INFO] [stdout]    |            ------- `UserNew` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Insertable` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Insertable` may come from an old version of the `diesel_derives` crate, try updating your dependency with `cargo update -p diesel_derives`
[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: this warning originates in the derive macro `Insertable` (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/models.rs:14:23
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive(Deserialize, Insertable, Queryable)]
[INFO] [stdout]    |                       -^^^^^^^^^
[INFO] [stdout]    |                       |
[INFO] [stdout]    |                       `Insertable` is not local
[INFO] [stdout]    |                       `table` is not local
[INFO] [stdout]    |                       move the `impl` block outside of this function `_impl_insertable_for_usernew`
[INFO] [stdout] 15 | #[table_name = "users"]
[INFO] [stdout] 16 | pub struct UserNew<'a> {
[INFO] [stdout]    |            ------- `UserNew` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Insertable` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Insertable` may come from an old version of the `diesel_derives` crate, try updating your dependency with `cargo update -p diesel_derives`
[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: this warning originates in the derive macro `Insertable` (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/models.rs:14:23
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive(Deserialize, Insertable, Queryable)]
[INFO] [stdout]    |                       ^---------
[INFO] [stdout]    |                       |
[INFO] [stdout]    |                       `UndecoratedInsertRecord` is not local
[INFO] [stdout]    |                       `table` is not local
[INFO] [stdout]    |                       move the `impl` block outside of this function `_impl_insertable_for_usernew`
[INFO] [stdout] 15 | #[table_name = "users"]
[INFO] [stdout] 16 | pub struct UserNew<'a> {
[INFO] [stdout]    |            ------- `UserNew` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Insertable` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Insertable` may come from an old version of the `diesel_derives` crate, try updating your dependency with `cargo update -p diesel_derives`
[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: this warning originates in the derive macro `Insertable` (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/models.rs:14:35
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive(Deserialize, Insertable, Queryable)]
[INFO] [stdout]    |                                   ^--------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Queryable` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this function `_impl_queryable_for_usernew`
[INFO] [stdout] 15 | #[table_name = "users"]
[INFO] [stdout] 16 | pub struct UserNew<'a> {
[INFO] [stdout]    |            ------- `UserNew` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Queryable` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Queryable` may come from an old version of the `diesel_derives` crate, try updating your dependency with `cargo update -p diesel_derives`
[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: this warning originates in the derive macro `Queryable` (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/models.rs:21:17
[INFO] [stdout]    |
[INFO] [stdout] 21 | #[derive(Debug, Queryable, Serialize, Insertable, Deserialize, Associations, Identifiable)]
[INFO] [stdout]    |                 ^--------
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Queryable` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this function `_impl_queryable_for_token`
[INFO] [stdout] ...
[INFO] [stdout] 24 | pub struct Token {
[INFO] [stdout]    |            ----- `Token` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Queryable` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Queryable` may come from an old version of the `diesel_derives` crate, try updating your dependency with `cargo update -p diesel_derives`
[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: this warning originates in the derive macro `Queryable` (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/models.rs:21:39
[INFO] [stdout]    |
[INFO] [stdout] 21 | #[derive(Debug, Queryable, Serialize, Insertable, Deserialize, Associations, Identifiable)]
[INFO] [stdout]    |                                       ^---------
[INFO] [stdout]    |                                       |
[INFO] [stdout]    |                                       `Insertable` is not local
[INFO] [stdout]    |                                       `table` is not local
[INFO] [stdout]    |                                       move the `impl` block outside of this function `_impl_insertable_for_token`
[INFO] [stdout] ...
[INFO] [stdout] 24 | pub struct Token {
[INFO] [stdout]    |            ----- `Token` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Insertable` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Insertable` may come from an old version of the `diesel_derives` crate, try updating your dependency with `cargo update -p diesel_derives`
[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: this warning originates in the derive macro `Insertable` (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/models.rs:21:39
[INFO] [stdout]    |
[INFO] [stdout] 21 | #[derive(Debug, Queryable, Serialize, Insertable, Deserialize, Associations, Identifiable)]
[INFO] [stdout]    |                                       -^^^^^^^^^
[INFO] [stdout]    |                                       |
[INFO] [stdout]    |                                       `Insertable` is not local
[INFO] [stdout]    |                                       `table` is not local
[INFO] [stdout]    |                                       move the `impl` block outside of this function `_impl_insertable_for_token`
[INFO] [stdout] ...
[INFO] [stdout] 24 | pub struct Token {
[INFO] [stdout]    |            ----- `Token` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Insertable` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Insertable` may come from an old version of the `diesel_derives` crate, try updating your dependency with `cargo update -p diesel_derives`
[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: this warning originates in the derive macro `Insertable` (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/models.rs:21:39
[INFO] [stdout]    |
[INFO] [stdout] 21 | #[derive(Debug, Queryable, Serialize, Insertable, Deserialize, Associations, Identifiable)]
[INFO] [stdout]    |                                       ^---------
[INFO] [stdout]    |                                       |
[INFO] [stdout]    |                                       `UndecoratedInsertRecord` is not local
[INFO] [stdout]    |                                       `table` is not local
[INFO] [stdout]    |                                       move the `impl` block outside of this function `_impl_insertable_for_token`
[INFO] [stdout] ...
[INFO] [stdout] 24 | pub struct Token {
[INFO] [stdout]    |            ----- `Token` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Insertable` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Insertable` may come from an old version of the `diesel_derives` crate, try updating your dependency with `cargo update -p diesel_derives`
[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: this warning originates in the derive macro `Insertable` (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/models.rs:21:64
[INFO] [stdout]    |
[INFO] [stdout] 21 | #[derive(Debug, Queryable, Serialize, Insertable, Deserialize, Associations, Identifiable)]
[INFO] [stdout]    |                                                                ^-----------
[INFO] [stdout]    |                                                                |
[INFO] [stdout]    |                                                                `BelongsTo` is not local
[INFO] [stdout]    |                                                                move the `impl` block outside of this function `_impl_associations_for_token`
[INFO] [stdout] 22 | #[belongs_to(User)]
[INFO] [stdout]    |              ---- `User` is not local
[INFO] [stdout] 23 | #[primary_key(token)]
[INFO] [stdout] 24 | pub struct Token {
[INFO] [stdout]    |            ----- `Token` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Associations` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Associations` may come from an old version of the `diesel_derives` crate, try updating your dependency with `cargo update -p diesel_derives`
[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: this warning originates in the derive macro `Associations` (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/models.rs:21:78
[INFO] [stdout]    |
[INFO] [stdout] 21 | #[derive(Debug, Queryable, Serialize, Insertable, Deserialize, Associations, Identifiable)]
[INFO] [stdout]    |                                                                              ^-----------
[INFO] [stdout]    |                                                                              |
[INFO] [stdout]    |                                                                              `HasTable` is not local
[INFO] [stdout]    |                                                                              move the `impl` block outside of this function `_impl_identifiable_for_token`
[INFO] [stdout] ...
[INFO] [stdout] 24 | pub struct Token {
[INFO] [stdout]    |            ----- `Token` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Identifiable` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Identifiable` may come from an old version of the `diesel_derives` crate, try updating your dependency with `cargo update -p diesel_derives`
[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: this warning originates in the derive macro `Identifiable` (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/models.rs:21:78
[INFO] [stdout]    |
[INFO] [stdout] 21 | #[derive(Debug, Queryable, Serialize, Insertable, Deserialize, Associations, Identifiable)]
[INFO] [stdout]    |                                                                              ^^^^^^^^^^^^
[INFO] [stdout]    |                                                                              |
[INFO] [stdout]    |                                                                              `Identifiable` is not local
[INFO] [stdout]    |                                                                              move the `impl` block outside of this function `_impl_identifiable_for_token`
[INFO] [stdout] ...
[INFO] [stdout] 24 | pub struct Token {
[INFO] [stdout]    |            ----- `Token` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Identifiable` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Identifiable` may come from an old version of the `diesel_derives` crate, try updating your dependency with `cargo update -p diesel_derives`
[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: this warning originates in the derive macro `Identifiable` (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/routes/account_session.rs:20:17
[INFO] [stdout]    |
[INFO] [stdout] 20 | #[derive(Debug, Fail, Serialize)]
[INFO] [stdout]    |                 ^---
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Fail` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_CreateSessionError`
[INFO] [stdout] 21 | pub enum CreateSessionError {
[INFO] [stdout]    |          ------------------ `CreateSessionError` 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/routes/account_session.rs:20:17
[INFO] [stdout]    |
[INFO] [stdout] 20 | #[derive(Debug, Fail, Serialize)]
[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_CreateSessionError`
[INFO] [stdout] 21 | pub enum CreateSessionError {
[INFO] [stdout]    |          ------------------ `CreateSessionError` 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/schema.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | / table! {
[INFO] [stdout] 2 | |     tokens (token) {
[INFO] [stdout] 3 | |         token -> Varchar,
[INFO] [stdout] 4 | |         user_id -> Int4,
[INFO] [stdout] 5 | |     }
[INFO] [stdout] 6 | | }
[INFO] [stdout]   | | ^
[INFO] [stdout]   | | |
[INFO] [stdout]   | | `table` is not local
[INFO] [stdout]   | |_`QueryId` is not local
[INFO] [stdout]   |   move the `impl` block outside of this function `_impl_query_id_for_table`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `QueryId` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `QueryId` may come from an old version of the `diesel_derives` crate, try updating your dependency with `cargo update -p diesel_derives`
[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: this warning originates in the derive macro `QueryId` which comes from the expansion of the macro `table` (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/schema.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | / table! {
[INFO] [stdout] 2 | |     tokens (token) {
[INFO] [stdout] 3 | |         token -> Varchar,
[INFO] [stdout]   | |         ----- `token` is not local
[INFO] [stdout] 4 | |         user_id -> Int4,
[INFO] [stdout] 5 | |     }
[INFO] [stdout] 6 | | }
[INFO] [stdout]   | | ^
[INFO] [stdout]   | | |
[INFO] [stdout]   | |_`QueryId` is not local
[INFO] [stdout]   |   move the `impl` block outside of this function `_impl_query_id_for_token`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `QueryId` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `QueryId` may come from an old version of the `diesel_derives` crate, try updating your dependency with `cargo update -p diesel_derives`
[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: this warning originates in the derive macro `QueryId` which comes from the expansion of the macro `table` (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/schema.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | / table! {
[INFO] [stdout] 2 | |     tokens (token) {
[INFO] [stdout] 3 | |         token -> Varchar,
[INFO] [stdout] 4 | |         user_id -> Int4,
[INFO] [stdout]   | |         ------- `user_id` is not local
[INFO] [stdout] 5 | |     }
[INFO] [stdout] 6 | | }
[INFO] [stdout]   | | ^
[INFO] [stdout]   | | |
[INFO] [stdout]   | |_`QueryId` is not local
[INFO] [stdout]   |   move the `impl` block outside of this function `_impl_query_id_for_user_id`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `QueryId` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `QueryId` may come from an old version of the `diesel_derives` crate, try updating your dependency with `cargo update -p diesel_derives`
[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: this warning originates in the derive macro `QueryId` which comes from the expansion of the macro `table` (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/schema.rs:8:1
[INFO] [stdout]    |
[INFO] [stdout]  8 | / table! {
[INFO] [stdout]  9 | |     users (id) {
[INFO] [stdout] 10 | |         id -> Int4,
[INFO] [stdout] 11 | |         email -> Varchar,
[INFO] [stdout] ...  |
[INFO] [stdout] 14 | | }
[INFO] [stdout]    | | ^
[INFO] [stdout]    | | |
[INFO] [stdout]    | | `table` is not local
[INFO] [stdout]    | |_`QueryId` is not local
[INFO] [stdout]    |   move the `impl` block outside of this function `_impl_query_id_for_table`
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `QueryId` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `QueryId` may come from an old version of the `diesel_derives` crate, try updating your dependency with `cargo update -p diesel_derives`
[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: this warning originates in the derive macro `QueryId` which comes from the expansion of the macro `table` (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/schema.rs:8:1
[INFO] [stdout]    |
[INFO] [stdout]  8 | / table! {
[INFO] [stdout]  9 | |     users (id) {
[INFO] [stdout] 10 | |         id -> Int4,
[INFO] [stdout]    | |         -- `id` is not local
[INFO] [stdout] 11 | |         email -> Varchar,
[INFO] [stdout] ...  |
[INFO] [stdout] 14 | | }
[INFO] [stdout]    | | ^
[INFO] [stdout]    | | |
[INFO] [stdout]    | |_`QueryId` is not local
[INFO] [stdout]    |   move the `impl` block outside of this function `_impl_query_id_for_id`
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `QueryId` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `QueryId` may come from an old version of the `diesel_derives` crate, try updating your dependency with `cargo update -p diesel_derives`
[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: this warning originates in the derive macro `QueryId` which comes from the expansion of the macro `table` (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/schema.rs:8:1
[INFO] [stdout]    |
[INFO] [stdout]  8 | / table! {
[INFO] [stdout]  9 | |     users (id) {
[INFO] [stdout] 10 | |         id -> Int4,
[INFO] [stdout] 11 | |         email -> Varchar,
[INFO] [stdout]    | |         ----- `email` is not local
[INFO] [stdout] ...  |
[INFO] [stdout] 14 | | }
[INFO] [stdout]    | | ^
[INFO] [stdout]    | | |
[INFO] [stdout]    | |_`QueryId` is not local
[INFO] [stdout]    |   move the `impl` block outside of this function `_impl_query_id_for_email`
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `QueryId` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `QueryId` may come from an old version of the `diesel_derives` crate, try updating your dependency with `cargo update -p diesel_derives`
[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: this warning originates in the derive macro `QueryId` which comes from the expansion of the macro `table` (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/schema.rs:8:1
[INFO] [stdout]    |
[INFO] [stdout]  8 | / table! {
[INFO] [stdout]  9 | |     users (id) {
[INFO] [stdout] 10 | |         id -> Int4,
[INFO] [stdout] 11 | |         email -> Varchar,
[INFO] [stdout] 12 | |         password -> Varchar,
[INFO] [stdout]    | |         -------- `password` is not local
[INFO] [stdout] 13 | |     }
[INFO] [stdout] 14 | | }
[INFO] [stdout]    | | ^
[INFO] [stdout]    | | |
[INFO] [stdout]    | |_`QueryId` is not local
[INFO] [stdout]    |   move the `impl` block outside of this function `_impl_query_id_for_password`
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `QueryId` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `QueryId` may come from an old version of the `diesel_derives` crate, try updating your dependency with `cargo update -p diesel_derives`
[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: this warning originates in the derive macro `QueryId` which comes from the expansion of the macro `table` (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/main.rs:10:10
[INFO] [stdout]    |
[INFO] [stdout] 10 | #[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_StartErr`
[INFO] [stdout] 11 | enum StartErr {
[INFO] [stdout]    |      -------- `StartErr` 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/main.rs:10:10
[INFO] [stdout]    |
[INFO] [stdout] 10 | #[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_StartErr`
[INFO] [stdout] 11 | enum StartErr {
[INFO] [stdout]    |      -------- `StartErr` 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 1m 00s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: nom v4.2.3, v_htmlescape v0.4.5
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 1`
[INFO] running `Command { std: "docker" "inspect" "c3ea19b202aea2899190f158b08d7946732c3100ec4790478f775e76cfb36add", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c3ea19b202aea2899190f158b08d7946732c3100ec4790478f775e76cfb36add", kill_on_drop: false }`
[INFO] [stdout] c3ea19b202aea2899190f158b08d7946732c3100ec4790478f775e76cfb36add
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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" "-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+33835004928d3bf65db4d4712e1330766263b0bd" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 3ef3fb9bef7dd74724be16e952e31ba5a9d0e5417538decd70fd7be15eeb2420
[INFO] running `Command { std: "docker" "start" "-a" "3ef3fb9bef7dd74724be16e952e31ba5a9d0e5417538decd70fd7be15eeb2420", kill_on_drop: false }`
[INFO] [stderr] warning: `package.edition` is unspecified, defaulting to `2015` while the latest is `2024`
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/auth.rs:25:22
[INFO] [stdout]    |
[INFO] [stdout] 25 |         for cause in Fail::iter_chain(fail) {
[INFO] [stdout]    |                      ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 25 |         for cause in <dyn Fail>::iter_chain(fail) {
[INFO] [stdout]    |                      ++++     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/db/token.rs:37:21
[INFO] [stdout]    |
[INFO] [stdout] 37 |                 let mut tokens = self.by_user_id.get_mut(user_id).unwrap();
[INFO] [stdout]    |                     ----^^^^^^
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) 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/auth.rs:40:10
[INFO] [stdout]    |
[INFO] [stdout] 40 | #[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_AuthError`
[INFO] [stdout] 41 | pub enum AuthError {
[INFO] [stdout]    |          --------- `AuthError` 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/auth.rs:40:10
[INFO] [stdout]    |
[INFO] [stdout] 40 | #[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_AuthError`
[INFO] [stdout] 41 | pub enum AuthError {
[INFO] [stdout]    |          --------- `AuthError` 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/db/mod.rs:31:17
[INFO] [stdout]    |
[INFO] [stdout] 31 | #[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_DatabaseError`
[INFO] [stdout] 32 | pub enum DatabaseError {
[INFO] [stdout]    |          ------------- `DatabaseError` 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/db/mod.rs:31:17
[INFO] [stdout]    |
[INFO] [stdout] 31 | #[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_DatabaseError`
[INFO] [stdout] 32 | pub enum DatabaseError {
[INFO] [stdout]    |          ------------- `DatabaseError` 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/handlers/account/create.rs:16:10
[INFO] [stdout]    |
[INFO] [stdout] 16 | #[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_AccountCreateError`
[INFO] [stdout] 17 | pub enum AccountCreateError {
[INFO] [stdout]    |          ------------------ `AccountCreateError` 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/handlers/account/create.rs:16:10
[INFO] [stdout]    |
[INFO] [stdout] 16 | #[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_AccountCreateError`
[INFO] [stdout] 17 | pub enum AccountCreateError {
[INFO] [stdout]    |          ------------------ `AccountCreateError` 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/handlers/account/login.rs:16:17
[INFO] [stdout]    |
[INFO] [stdout] 16 | #[derive(Debug, Fail, Serialize)]
[INFO] [stdout]    |                 ^---
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Fail` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_SessionCreateError`
[INFO] [stdout] 17 | pub enum SessionCreateError {
[INFO] [stdout]    |          ------------------ `SessionCreateError` 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/handlers/account/login.rs:16:17
[INFO] [stdout]    |
[INFO] [stdout] 16 | #[derive(Debug, Fail, Serialize)]
[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_SessionCreateError`
[INFO] [stdout] 17 | pub enum SessionCreateError {
[INFO] [stdout]    |          ------------------ `SessionCreateError` 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: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]   --> src/handlers/account/login.rs:61:60
[INFO] [stdout]    |
[INFO] [stdout] 61 |             .filter(users::password.eq(new_account.password.clone()))
[INFO] [stdout]    |                                                            ^^^^^^^^ help: remove this redundant call
[INFO] [stdout]    |
[INFO] [stdout]    = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed
[INFO] [stdout]    = note: `#[warn(noop_method_call)]` 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/models.rs:7:10
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[derive(Queryable, Serialize, Deserialize, Associations, Identifiable, Debug)]
[INFO] [stdout]   |          ^--------
[INFO] [stdout]   |          |
[INFO] [stdout]   |          `Queryable` is not local
[INFO] [stdout]   |          move the `impl` block outside of this function `_impl_queryable_for_user`
[INFO] [stdout] 8 | pub struct User {
[INFO] [stdout]   |            ---- `User` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Queryable` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Queryable` may come from an old version of the `diesel_derives` crate, try updating your dependency with `cargo update -p diesel_derives`
[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: this warning originates in the derive macro `Queryable` (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/models.rs:7:59
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[derive(Queryable, Serialize, Deserialize, Associations, Identifiable, Debug)]
[INFO] [stdout]   |                                                           ^-----------
[INFO] [stdout]   |                                                           |
[INFO] [stdout]   |                                                           `HasTable` is not local
[INFO] [stdout]   |                                                           move the `impl` block outside of this function `_impl_identifiable_for_user`
[INFO] [stdout] 8 | pub struct User {
[INFO] [stdout]   |            ---- `User` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Identifiable` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Identifiable` may come from an old version of the `diesel_derives` crate, try updating your dependency with `cargo update -p diesel_derives`
[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: this warning originates in the derive macro `Identifiable` (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/models.rs:7:59
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[derive(Queryable, Serialize, Deserialize, Associations, Identifiable, Debug)]
[INFO] [stdout]   |                                                           ^^^^^^^^^^^^
[INFO] [stdout]   |                                                           |
[INFO] [stdout]   |                                                           `Identifiable` is not local
[INFO] [stdout]   |                                                           move the `impl` block outside of this function `_impl_identifiable_for_user`
[INFO] [stdout] 8 | pub struct User {
[INFO] [stdout]   |            ---- `User` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Identifiable` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Identifiable` may come from an old version of the `diesel_derives` crate, try updating your dependency with `cargo update -p diesel_derives`
[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: this warning originates in the derive macro `Identifiable` (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/models.rs:14:23
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive(Deserialize, Insertable, Queryable)]
[INFO] [stdout]    |                       ^---------
[INFO] [stdout]    |                       |
[INFO] [stdout]    |                       `Insertable` is not local
[INFO] [stdout]    |                       `table` is not local
[INFO] [stdout]    |                       move the `impl` block outside of this function `_impl_insertable_for_usernew`
[INFO] [stdout] 15 | #[table_name = "users"]
[INFO] [stdout] 16 | pub struct UserNew<'a> {
[INFO] [stdout]    |            ------- `UserNew` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Insertable` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Insertable` may come from an old version of the `diesel_derives` crate, try updating your dependency with `cargo update -p diesel_derives`
[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: this warning originates in the derive macro `Insertable` (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/models.rs:14:23
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive(Deserialize, Insertable, Queryable)]
[INFO] [stdout]    |                       -^^^^^^^^^
[INFO] [stdout]    |                       |
[INFO] [stdout]    |                       `Insertable` is not local
[INFO] [stdout]    |                       `table` is not local
[INFO] [stdout]    |                       move the `impl` block outside of this function `_impl_insertable_for_usernew`
[INFO] [stdout] 15 | #[table_name = "users"]
[INFO] [stdout] 16 | pub struct UserNew<'a> {
[INFO] [stdout]    |            ------- `UserNew` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Insertable` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Insertable` may come from an old version of the `diesel_derives` crate, try updating your dependency with `cargo update -p diesel_derives`
[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: this warning originates in the derive macro `Insertable` (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/models.rs:14:23
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive(Deserialize, Insertable, Queryable)]
[INFO] [stdout]    |                       ^---------
[INFO] [stdout]    |                       |
[INFO] [stdout]    |                       `UndecoratedInsertRecord` is not local
[INFO] [stdout]    |                       `table` is not local
[INFO] [stdout]    |                       move the `impl` block outside of this function `_impl_insertable_for_usernew`
[INFO] [stdout] 15 | #[table_name = "users"]
[INFO] [stdout] 16 | pub struct UserNew<'a> {
[INFO] [stdout]    |            ------- `UserNew` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Insertable` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Insertable` may come from an old version of the `diesel_derives` crate, try updating your dependency with `cargo update -p diesel_derives`
[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: this warning originates in the derive macro `Insertable` (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/models.rs:14:35
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive(Deserialize, Insertable, Queryable)]
[INFO] [stdout]    |                                   ^--------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Queryable` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this function `_impl_queryable_for_usernew`
[INFO] [stdout] 15 | #[table_name = "users"]
[INFO] [stdout] 16 | pub struct UserNew<'a> {
[INFO] [stdout]    |            ------- `UserNew` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Queryable` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Queryable` may come from an old version of the `diesel_derives` crate, try updating your dependency with `cargo update -p diesel_derives`
[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: this warning originates in the derive macro `Queryable` (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/models.rs:21:17
[INFO] [stdout]    |
[INFO] [stdout] 21 | #[derive(Debug, Queryable, Serialize, Insertable, Deserialize, Associations, Identifiable)]
[INFO] [stdout]    |                 ^--------
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Queryable` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this function `_impl_queryable_for_token`
[INFO] [stdout] ...
[INFO] [stdout] 24 | pub struct Token {
[INFO] [stdout]    |            ----- `Token` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Queryable` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Queryable` may come from an old version of the `diesel_derives` crate, try updating your dependency with `cargo update -p diesel_derives`
[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: this warning originates in the derive macro `Queryable` (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/models.rs:21:39
[INFO] [stdout]    |
[INFO] [stdout] 21 | #[derive(Debug, Queryable, Serialize, Insertable, Deserialize, Associations, Identifiable)]
[INFO] [stdout]    |                                       ^---------
[INFO] [stdout]    |                                       |
[INFO] [stdout]    |                                       `Insertable` is not local
[INFO] [stdout]    |                                       `table` is not local
[INFO] [stdout]    |                                       move the `impl` block outside of this function `_impl_insertable_for_token`
[INFO] [stdout] ...
[INFO] [stdout] 24 | pub struct Token {
[INFO] [stdout]    |            ----- `Token` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Insertable` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Insertable` may come from an old version of the `diesel_derives` crate, try updating your dependency with `cargo update -p diesel_derives`
[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: this warning originates in the derive macro `Insertable` (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/models.rs:21:39
[INFO] [stdout]    |
[INFO] [stdout] 21 | #[derive(Debug, Queryable, Serialize, Insertable, Deserialize, Associations, Identifiable)]
[INFO] [stdout]    |                                       -^^^^^^^^^
[INFO] [stdout]    |                                       |
[INFO] [stdout]    |                                       `Insertable` is not local
[INFO] [stdout]    |                                       `table` is not local
[INFO] [stdout]    |                                       move the `impl` block outside of this function `_impl_insertable_for_token`
[INFO] [stdout] ...
[INFO] [stdout] 24 | pub struct Token {
[INFO] [stdout]    |            ----- `Token` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Insertable` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Insertable` may come from an old version of the `diesel_derives` crate, try updating your dependency with `cargo update -p diesel_derives`
[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: this warning originates in the derive macro `Insertable` (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/models.rs:21:39
[INFO] [stdout]    |
[INFO] [stdout] 21 | #[derive(Debug, Queryable, Serialize, Insertable, Deserialize, Associations, Identifiable)]
[INFO] [stdout]    |                                       ^---------
[INFO] [stdout]    |                                       |
[INFO] [stdout]    |                                       `UndecoratedInsertRecord` is not local
[INFO] [stdout]    |                                       `table` is not local
[INFO] [stdout]    |                                       move the `impl` block outside of this function `_impl_insertable_for_token`
[INFO] [stdout] ...
[INFO] [stdout] 24 | pub struct Token {
[INFO] [stdout]    |            ----- `Token` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Insertable` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Insertable` may come from an old version of the `diesel_derives` crate, try updating your dependency with `cargo update -p diesel_derives`
[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: this warning originates in the derive macro `Insertable` (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/models.rs:21:64
[INFO] [stdout]    |
[INFO] [stdout] 21 | #[derive(Debug, Queryable, Serialize, Insertable, Deserialize, Associations, Identifiable)]
[INFO] [stdout]    |                                                                ^-----------
[INFO] [stdout]    |                                                                |
[INFO] [stdout]    |                                                                `BelongsTo` is not local
[INFO] [stdout]    |                                                                move the `impl` block outside of this function `_impl_associations_for_token`
[INFO] [stdout] 22 | #[belongs_to(User)]
[INFO] [stdout]    |              ---- `User` is not local
[INFO] [stdout] 23 | #[primary_key(token)]
[INFO] [stdout] 24 | pub struct Token {
[INFO] [stdout]    |            ----- `Token` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Associations` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Associations` may come from an old version of the `diesel_derives` crate, try updating your dependency with `cargo update -p diesel_derives`
[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: this warning originates in the derive macro `Associations` (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/models.rs:21:78
[INFO] [stdout]    |
[INFO] [stdout] 21 | #[derive(Debug, Queryable, Serialize, Insertable, Deserialize, Associations, Identifiable)]
[INFO] [stdout]    |                                                                              ^-----------
[INFO] [stdout]    |                                                                              |
[INFO] [stdout]    |                                                                              `HasTable` is not local
[INFO] [stdout]    |                                                                              move the `impl` block outside of this function `_impl_identifiable_for_token`
[INFO] [stdout] ...
[INFO] [stdout] 24 | pub struct Token {
[INFO] [stdout]    |            ----- `Token` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Identifiable` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Identifiable` may come from an old version of the `diesel_derives` crate, try updating your dependency with `cargo update -p diesel_derives`
[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: this warning originates in the derive macro `Identifiable` (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/models.rs:21:78
[INFO] [stdout]    |
[INFO] [stdout] 21 | #[derive(Debug, Queryable, Serialize, Insertable, Deserialize, Associations, Identifiable)]
[INFO] [stdout]    |                                                                              ^^^^^^^^^^^^
[INFO] [stdout]    |                                                                              |
[INFO] [stdout]    |                                                                              `Identifiable` is not local
[INFO] [stdout]    |                                                                              move the `impl` block outside of this function `_impl_identifiable_for_token`
[INFO] [stdout] ...
[INFO] [stdout] 24 | pub struct Token {
[INFO] [stdout]    |            ----- `Token` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Identifiable` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Identifiable` may come from an old version of the `diesel_derives` crate, try updating your dependency with `cargo update -p diesel_derives`
[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: this warning originates in the derive macro `Identifiable` (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/routes/account_session.rs:20:17
[INFO] [stdout]    |
[INFO] [stdout] 20 | #[derive(Debug, Fail, Serialize)]
[INFO] [stdout]    |                 ^---
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Fail` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_CreateSessionError`
[INFO] [stdout] 21 | pub enum CreateSessionError {
[INFO] [stdout]    |          ------------------ `CreateSessionError` 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/routes/account_session.rs:20:17
[INFO] [stdout]    |
[INFO] [stdout] 20 | #[derive(Debug, Fail, Serialize)]
[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_CreateSessionError`
[INFO] [stdout] 21 | pub enum CreateSessionError {
[INFO] [stdout]    |          ------------------ `CreateSessionError` 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/schema.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | / table! {
[INFO] [stdout] 2 | |     tokens (token) {
[INFO] [stdout] 3 | |         token -> Varchar,
[INFO] [stdout] 4 | |         user_id -> Int4,
[INFO] [stdout] 5 | |     }
[INFO] [stdout] 6 | | }
[INFO] [stdout]   | | ^
[INFO] [stdout]   | | |
[INFO] [stdout]   | | `table` is not local
[INFO] [stdout]   | |_`QueryId` is not local
[INFO] [stdout]   |   move the `impl` block outside of this function `_impl_query_id_for_table`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `QueryId` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `QueryId` may come from an old version of the `diesel_derives` crate, try updating your dependency with `cargo update -p diesel_derives`
[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: this warning originates in the derive macro `QueryId` which comes from the expansion of the macro `table` (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/schema.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | / table! {
[INFO] [stdout] 2 | |     tokens (token) {
[INFO] [stdout] 3 | |         token -> Varchar,
[INFO] [stdout]   | |         ----- `token` is not local
[INFO] [stdout] 4 | |         user_id -> Int4,
[INFO] [stdout] 5 | |     }
[INFO] [stdout] 6 | | }
[INFO] [stdout]   | | ^
[INFO] [stdout]   | | |
[INFO] [stdout]   | |_`QueryId` is not local
[INFO] [stdout]   |   move the `impl` block outside of this function `_impl_query_id_for_token`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `QueryId` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `QueryId` may come from an old version of the `diesel_derives` crate, try updating your dependency with `cargo update -p diesel_derives`
[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: this warning originates in the derive macro `QueryId` which comes from the expansion of the macro `table` (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/schema.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | / table! {
[INFO] [stdout] 2 | |     tokens (token) {
[INFO] [stdout] 3 | |         token -> Varchar,
[INFO] [stdout] 4 | |         user_id -> Int4,
[INFO] [stdout]   | |         ------- `user_id` is not local
[INFO] [stdout] 5 | |     }
[INFO] [stdout] 6 | | }
[INFO] [stdout]   | | ^
[INFO] [stdout]   | | |
[INFO] [stdout]   | |_`QueryId` is not local
[INFO] [stdout]   |   move the `impl` block outside of this function `_impl_query_id_for_user_id`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `QueryId` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `QueryId` may come from an old version of the `diesel_derives` crate, try updating your dependency with `cargo update -p diesel_derives`
[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: this warning originates in the derive macro `QueryId` which comes from the expansion of the macro `table` (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/schema.rs:8:1
[INFO] [stdout]    |
[INFO] [stdout]  8 | / table! {
[INFO] [stdout]  9 | |     users (id) {
[INFO] [stdout] 10 | |         id -> Int4,
[INFO] [stdout] 11 | |         email -> Varchar,
[INFO] [stdout] ...  |
[INFO] [stdout] 14 | | }
[INFO] [stdout]    | | ^
[INFO] [stdout]    | | |
[INFO] [stdout]    | | `table` is not local
[INFO] [stdout]    | |_`QueryId` is not local
[INFO] [stdout]    |   move the `impl` block outside of this function `_impl_query_id_for_table`
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `QueryId` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `QueryId` may come from an old version of the `diesel_derives` crate, try updating your dependency with `cargo update -p diesel_derives`
[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: this warning originates in the derive macro `QueryId` which comes from the expansion of the macro `table` (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/schema.rs:8:1
[INFO] [stdout]    |
[INFO] [stdout]  8 | / table! {
[INFO] [stdout]  9 | |     users (id) {
[INFO] [stdout] 10 | |         id -> Int4,
[INFO] [stdout]    | |         -- `id` is not local
[INFO] [stdout] 11 | |         email -> Varchar,
[INFO] [stdout] ...  |
[INFO] [stdout] 14 | | }
[INFO] [stdout]    | | ^
[INFO] [stdout]    | | |
[INFO] [stdout]    | |_`QueryId` is not local
[INFO] [stdout]    |   move the `impl` block outside of this function `_impl_query_id_for_id`
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `QueryId` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `QueryId` may come from an old version of the `diesel_derives` crate, try updating your dependency with `cargo update -p diesel_derives`
[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: this warning originates in the derive macro `QueryId` which comes from the expansion of the macro `table` (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/schema.rs:8:1
[INFO] [stdout]    |
[INFO] [stdout]  8 | / table! {
[INFO] [stdout]  9 | |     users (id) {
[INFO] [stdout] 10 | |         id -> Int4,
[INFO] [stdout] 11 | |         email -> Varchar,
[INFO] [stdout]    | |         ----- `email` is not local
[INFO] [stdout] ...  |
[INFO] [stdout] 14 | | }
[INFO] [stdout]    | | ^
[INFO] [stdout]    | | |
[INFO] [stdout]    | |_`QueryId` is not local
[INFO] [stdout]    |   move the `impl` block outside of this function `_impl_query_id_for_email`
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `QueryId` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `QueryId` may come from an old version of the `diesel_derives` crate, try updating your dependency with `cargo update -p diesel_derives`
[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: this warning originates in the derive macro `QueryId` which comes from the expansion of the macro `table` (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/schema.rs:8:1
[INFO] [stdout]    |
[INFO] [stdout]  8 | / table! {
[INFO] [stdout]  9 | |     users (id) {
[INFO] [stdout] 10 | |         id -> Int4,
[INFO] [stdout] 11 | |         email -> Varchar,
[INFO] [stdout] 12 | |         password -> Varchar,
[INFO] [stdout]    | |         -------- `password` is not local
[INFO] [stdout] 13 | |     }
[INFO] [stdout] 14 | | }
[INFO] [stdout]    | | ^
[INFO] [stdout]    | | |
[INFO] [stdout]    | |_`QueryId` is not local
[INFO] [stdout]    |   move the `impl` block outside of this function `_impl_query_id_for_password`
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `QueryId` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `QueryId` may come from an old version of the `diesel_derives` crate, try updating your dependency with `cargo update -p diesel_derives`
[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: this warning originates in the derive macro `QueryId` which comes from the expansion of the macro `table` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling howtocards v0.1.3 (/opt/rustwide/workdir)
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/main.rs:10:10
[INFO] [stdout]    |
[INFO] [stdout] 10 | #[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_StartErr`
[INFO] [stdout] 11 | enum StartErr {
[INFO] [stdout]    |      -------- `StartErr` 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/main.rs:10:10
[INFO] [stdout]    |
[INFO] [stdout] 10 | #[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_StartErr`
[INFO] [stdout] 11 | enum StartErr {
[INFO] [stdout]    |      -------- `StartErr` 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: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/auth.rs:25:22
[INFO] [stdout]    |
[INFO] [stdout] 25 |         for cause in Fail::iter_chain(fail) {
[INFO] [stdout]    |                      ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 25 |         for cause in <dyn Fail>::iter_chain(fail) {
[INFO] [stdout]    |                      ++++     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/db/token.rs:37:21
[INFO] [stdout]    |
[INFO] [stdout] 37 |                 let mut tokens = self.by_user_id.get_mut(user_id).unwrap();
[INFO] [stdout]    |                     ----^^^^^^
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) 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/auth.rs:40:10
[INFO] [stdout]    |
[INFO] [stdout] 40 | #[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_AuthError`
[INFO] [stdout] 41 | pub enum AuthError {
[INFO] [stdout]    |          --------- `AuthError` 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/auth.rs:40:10
[INFO] [stdout]    |
[INFO] [stdout] 40 | #[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_AuthError`
[INFO] [stdout] 41 | pub enum AuthError {
[INFO] [stdout]    |          --------- `AuthError` 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/db/mod.rs:31:17
[INFO] [stdout]    |
[INFO] [stdout] 31 | #[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_DatabaseError`
[INFO] [stdout] 32 | pub enum DatabaseError {
[INFO] [stdout]    |          ------------- `DatabaseError` 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/db/mod.rs:31:17
[INFO] [stdout]    |
[INFO] [stdout] 31 | #[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_DatabaseError`
[INFO] [stdout] 32 | pub enum DatabaseError {
[INFO] [stdout]    |          ------------- `DatabaseError` 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/handlers/account/create.rs:16:10
[INFO] [stdout]    |
[INFO] [stdout] 16 | #[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_AccountCreateError`
[INFO] [stdout] 17 | pub enum AccountCreateError {
[INFO] [stdout]    |          ------------------ `AccountCreateError` 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/handlers/account/create.rs:16:10
[INFO] [stdout]    |
[INFO] [stdout] 16 | #[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_AccountCreateError`
[INFO] [stdout] 17 | pub enum AccountCreateError {
[INFO] [stdout]    |          ------------------ `AccountCreateError` 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/handlers/account/login.rs:16:17
[INFO] [stdout]    |
[INFO] [stdout] 16 | #[derive(Debug, Fail, Serialize)]
[INFO] [stdout]    |                 ^---
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Fail` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_SessionCreateError`
[INFO] [stdout] 17 | pub enum SessionCreateError {
[INFO] [stdout]    |          ------------------ `SessionCreateError` 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/handlers/account/login.rs:16:17
[INFO] [stdout]    |
[INFO] [stdout] 16 | #[derive(Debug, Fail, Serialize)]
[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_SessionCreateError`
[INFO] [stdout] 17 | pub enum SessionCreateError {
[INFO] [stdout]    |          ------------------ `SessionCreateError` 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: call to `.clone()` on a reference in this situation does nothing
[INFO] [stdout]   --> src/handlers/account/login.rs:61:60
[INFO] [stdout]    |
[INFO] [stdout] 61 |             .filter(users::password.eq(new_account.password.clone()))
[INFO] [stdout]    |                                                            ^^^^^^^^ help: remove this redundant call
[INFO] [stdout]    |
[INFO] [stdout]    = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed
[INFO] [stdout]    = note: `#[warn(noop_method_call)]` 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/models.rs:7:10
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[derive(Queryable, Serialize, Deserialize, Associations, Identifiable, Debug)]
[INFO] [stdout]   |          ^--------
[INFO] [stdout]   |          |
[INFO] [stdout]   |          `Queryable` is not local
[INFO] [stdout]   |          move the `impl` block outside of this function `_impl_queryable_for_user`
[INFO] [stdout] 8 | pub struct User {
[INFO] [stdout]   |            ---- `User` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Queryable` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Queryable` may come from an old version of the `diesel_derives` crate, try updating your dependency with `cargo update -p diesel_derives`
[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: this warning originates in the derive macro `Queryable` (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/models.rs:7:59
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[derive(Queryable, Serialize, Deserialize, Associations, Identifiable, Debug)]
[INFO] [stdout]   |                                                           ^-----------
[INFO] [stdout]   |                                                           |
[INFO] [stdout]   |                                                           `HasTable` is not local
[INFO] [stdout]   |                                                           move the `impl` block outside of this function `_impl_identifiable_for_user`
[INFO] [stdout] 8 | pub struct User {
[INFO] [stdout]   |            ---- `User` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Identifiable` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Identifiable` may come from an old version of the `diesel_derives` crate, try updating your dependency with `cargo update -p diesel_derives`
[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: this warning originates in the derive macro `Identifiable` (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/models.rs:7:59
[INFO] [stdout]   |
[INFO] [stdout] 7 | #[derive(Queryable, Serialize, Deserialize, Associations, Identifiable, Debug)]
[INFO] [stdout]   |                                                           ^^^^^^^^^^^^
[INFO] [stdout]   |                                                           |
[INFO] [stdout]   |                                                           `Identifiable` is not local
[INFO] [stdout]   |                                                           move the `impl` block outside of this function `_impl_identifiable_for_user`
[INFO] [stdout] 8 | pub struct User {
[INFO] [stdout]   |            ---- `User` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Identifiable` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Identifiable` may come from an old version of the `diesel_derives` crate, try updating your dependency with `cargo update -p diesel_derives`
[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: this warning originates in the derive macro `Identifiable` (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/models.rs:14:23
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive(Deserialize, Insertable, Queryable)]
[INFO] [stdout]    |                       ^---------
[INFO] [stdout]    |                       |
[INFO] [stdout]    |                       `Insertable` is not local
[INFO] [stdout]    |                       `table` is not local
[INFO] [stdout]    |                       move the `impl` block outside of this function `_impl_insertable_for_usernew`
[INFO] [stdout] 15 | #[table_name = "users"]
[INFO] [stdout] 16 | pub struct UserNew<'a> {
[INFO] [stdout]    |            ------- `UserNew` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Insertable` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Insertable` may come from an old version of the `diesel_derives` crate, try updating your dependency with `cargo update -p diesel_derives`
[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: this warning originates in the derive macro `Insertable` (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/models.rs:14:23
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive(Deserialize, Insertable, Queryable)]
[INFO] [stdout]    |                       -^^^^^^^^^
[INFO] [stdout]    |                       |
[INFO] [stdout]    |                       `Insertable` is not local
[INFO] [stdout]    |                       `table` is not local
[INFO] [stdout]    |                       move the `impl` block outside of this function `_impl_insertable_for_usernew`
[INFO] [stdout] 15 | #[table_name = "users"]
[INFO] [stdout] 16 | pub struct UserNew<'a> {
[INFO] [stdout]    |            ------- `UserNew` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Insertable` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Insertable` may come from an old version of the `diesel_derives` crate, try updating your dependency with `cargo update -p diesel_derives`
[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: this warning originates in the derive macro `Insertable` (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/models.rs:14:23
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive(Deserialize, Insertable, Queryable)]
[INFO] [stdout]    |                       ^---------
[INFO] [stdout]    |                       |
[INFO] [stdout]    |                       `UndecoratedInsertRecord` is not local
[INFO] [stdout]    |                       `table` is not local
[INFO] [stdout]    |                       move the `impl` block outside of this function `_impl_insertable_for_usernew`
[INFO] [stdout] 15 | #[table_name = "users"]
[INFO] [stdout] 16 | pub struct UserNew<'a> {
[INFO] [stdout]    |            ------- `UserNew` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Insertable` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Insertable` may come from an old version of the `diesel_derives` crate, try updating your dependency with `cargo update -p diesel_derives`
[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: this warning originates in the derive macro `Insertable` (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/models.rs:14:35
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive(Deserialize, Insertable, Queryable)]
[INFO] [stdout]    |                                   ^--------
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   `Queryable` is not local
[INFO] [stdout]    |                                   move the `impl` block outside of this function `_impl_queryable_for_usernew`
[INFO] [stdout] 15 | #[table_name = "users"]
[INFO] [stdout] 16 | pub struct UserNew<'a> {
[INFO] [stdout]    |            ------- `UserNew` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Queryable` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Queryable` may come from an old version of the `diesel_derives` crate, try updating your dependency with `cargo update -p diesel_derives`
[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: this warning originates in the derive macro `Queryable` (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/models.rs:21:17
[INFO] [stdout]    |
[INFO] [stdout] 21 | #[derive(Debug, Queryable, Serialize, Insertable, Deserialize, Associations, Identifiable)]
[INFO] [stdout]    |                 ^--------
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Queryable` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this function `_impl_queryable_for_token`
[INFO] [stdout] ...
[INFO] [stdout] 24 | pub struct Token {
[INFO] [stdout]    |            ----- `Token` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Queryable` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Queryable` may come from an old version of the `diesel_derives` crate, try updating your dependency with `cargo update -p diesel_derives`
[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: this warning originates in the derive macro `Queryable` (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/models.rs:21:39
[INFO] [stdout]    |
[INFO] [stdout] 21 | #[derive(Debug, Queryable, Serialize, Insertable, Deserialize, Associations, Identifiable)]
[INFO] [stdout]    |                                       ^---------
[INFO] [stdout]    |                                       |
[INFO] [stdout]    |                                       `Insertable` is not local
[INFO] [stdout]    |                                       `table` is not local
[INFO] [stdout]    |                                       move the `impl` block outside of this function `_impl_insertable_for_token`
[INFO] [stdout] ...
[INFO] [stdout] 24 | pub struct Token {
[INFO] [stdout]    |            ----- `Token` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Insertable` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Insertable` may come from an old version of the `diesel_derives` crate, try updating your dependency with `cargo update -p diesel_derives`
[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: this warning originates in the derive macro `Insertable` (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/models.rs:21:39
[INFO] [stdout]    |
[INFO] [stdout] 21 | #[derive(Debug, Queryable, Serialize, Insertable, Deserialize, Associations, Identifiable)]
[INFO] [stdout]    |                                       -^^^^^^^^^
[INFO] [stdout]    |                                       |
[INFO] [stdout]    |                                       `Insertable` is not local
[INFO] [stdout]    |                                       `table` is not local
[INFO] [stdout]    |                                       move the `impl` block outside of this function `_impl_insertable_for_token`
[INFO] [stdout] ...
[INFO] [stdout] 24 | pub struct Token {
[INFO] [stdout]    |            ----- `Token` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Insertable` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Insertable` may come from an old version of the `diesel_derives` crate, try updating your dependency with `cargo update -p diesel_derives`
[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: this warning originates in the derive macro `Insertable` (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/models.rs:21:39
[INFO] [stdout]    |
[INFO] [stdout] 21 | #[derive(Debug, Queryable, Serialize, Insertable, Deserialize, Associations, Identifiable)]
[INFO] [stdout]    |                                       ^---------
[INFO] [stdout]    |                                       |
[INFO] [stdout]    |                                       `UndecoratedInsertRecord` is not local
[INFO] [stdout]    |                                       `table` is not local
[INFO] [stdout]    |                                       move the `impl` block outside of this function `_impl_insertable_for_token`
[INFO] [stdout] ...
[INFO] [stdout] 24 | pub struct Token {
[INFO] [stdout]    |            ----- `Token` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Insertable` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Insertable` may come from an old version of the `diesel_derives` crate, try updating your dependency with `cargo update -p diesel_derives`
[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: this warning originates in the derive macro `Insertable` (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/models.rs:21:64
[INFO] [stdout]    |
[INFO] [stdout] 21 | #[derive(Debug, Queryable, Serialize, Insertable, Deserialize, Associations, Identifiable)]
[INFO] [stdout]    |                                                                ^-----------
[INFO] [stdout]    |                                                                |
[INFO] [stdout]    |                                                                `BelongsTo` is not local
[INFO] [stdout]    |                                                                move the `impl` block outside of this function `_impl_associations_for_token`
[INFO] [stdout] 22 | #[belongs_to(User)]
[INFO] [stdout]    |              ---- `User` is not local
[INFO] [stdout] 23 | #[primary_key(token)]
[INFO] [stdout] 24 | pub struct Token {
[INFO] [stdout]    |            ----- `Token` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Associations` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Associations` may come from an old version of the `diesel_derives` crate, try updating your dependency with `cargo update -p diesel_derives`
[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: this warning originates in the derive macro `Associations` (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/models.rs:21:78
[INFO] [stdout]    |
[INFO] [stdout] 21 | #[derive(Debug, Queryable, Serialize, Insertable, Deserialize, Associations, Identifiable)]
[INFO] [stdout]    |                                                                              ^-----------
[INFO] [stdout]    |                                                                              |
[INFO] [stdout]    |                                                                              `HasTable` is not local
[INFO] [stdout]    |                                                                              move the `impl` block outside of this function `_impl_identifiable_for_token`
[INFO] [stdout] ...
[INFO] [stdout] 24 | pub struct Token {
[INFO] [stdout]    |            ----- `Token` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Identifiable` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Identifiable` may come from an old version of the `diesel_derives` crate, try updating your dependency with `cargo update -p diesel_derives`
[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: this warning originates in the derive macro `Identifiable` (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/models.rs:21:78
[INFO] [stdout]    |
[INFO] [stdout] 21 | #[derive(Debug, Queryable, Serialize, Insertable, Deserialize, Associations, Identifiable)]
[INFO] [stdout]    |                                                                              ^^^^^^^^^^^^
[INFO] [stdout]    |                                                                              |
[INFO] [stdout]    |                                                                              `Identifiable` is not local
[INFO] [stdout]    |                                                                              move the `impl` block outside of this function `_impl_identifiable_for_token`
[INFO] [stdout] ...
[INFO] [stdout] 24 | pub struct Token {
[INFO] [stdout]    |            ----- `Token` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Identifiable` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Identifiable` may come from an old version of the `diesel_derives` crate, try updating your dependency with `cargo update -p diesel_derives`
[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: this warning originates in the derive macro `Identifiable` (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/routes/account_session.rs:20:17
[INFO] [stdout]    |
[INFO] [stdout] 20 | #[derive(Debug, Fail, Serialize)]
[INFO] [stdout]    |                 ^---
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Fail` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_CreateSessionError`
[INFO] [stdout] 21 | pub enum CreateSessionError {
[INFO] [stdout]    |          ------------------ `CreateSessionError` 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/routes/account_session.rs:20:17
[INFO] [stdout]    |
[INFO] [stdout] 20 | #[derive(Debug, Fail, Serialize)]
[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_CreateSessionError`
[INFO] [stdout] 21 | pub enum CreateSessionError {
[INFO] [stdout]    |          ------------------ `CreateSessionError` 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/schema.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | / table! {
[INFO] [stdout] 2 | |     tokens (token) {
[INFO] [stdout] 3 | |         token -> Varchar,
[INFO] [stdout] 4 | |         user_id -> Int4,
[INFO] [stdout] 5 | |     }
[INFO] [stdout] 6 | | }
[INFO] [stdout]   | | ^
[INFO] [stdout]   | | |
[INFO] [stdout]   | | `table` is not local
[INFO] [stdout]   | |_`QueryId` is not local
[INFO] [stdout]   |   move the `impl` block outside of this function `_impl_query_id_for_table`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `QueryId` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `QueryId` may come from an old version of the `diesel_derives` crate, try updating your dependency with `cargo update -p diesel_derives`
[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: this warning originates in the derive macro `QueryId` which comes from the expansion of the macro `table` (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/schema.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | / table! {
[INFO] [stdout] 2 | |     tokens (token) {
[INFO] [stdout] 3 | |         token -> Varchar,
[INFO] [stdout]   | |         ----- `token` is not local
[INFO] [stdout] 4 | |         user_id -> Int4,
[INFO] [stdout] 5 | |     }
[INFO] [stdout] 6 | | }
[INFO] [stdout]   | | ^
[INFO] [stdout]   | | |
[INFO] [stdout]   | |_`QueryId` is not local
[INFO] [stdout]   |   move the `impl` block outside of this function `_impl_query_id_for_token`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `QueryId` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `QueryId` may come from an old version of the `diesel_derives` crate, try updating your dependency with `cargo update -p diesel_derives`
[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: this warning originates in the derive macro `QueryId` which comes from the expansion of the macro `table` (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/schema.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | / table! {
[INFO] [stdout] 2 | |     tokens (token) {
[INFO] [stdout] 3 | |         token -> Varchar,
[INFO] [stdout] 4 | |         user_id -> Int4,
[INFO] [stdout]   | |         ------- `user_id` is not local
[INFO] [stdout] 5 | |     }
[INFO] [stdout] 6 | | }
[INFO] [stdout]   | | ^
[INFO] [stdout]   | | |
[INFO] [stdout]   | |_`QueryId` is not local
[INFO] [stdout]   |   move the `impl` block outside of this function `_impl_query_id_for_user_id`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `QueryId` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `QueryId` may come from an old version of the `diesel_derives` crate, try updating your dependency with `cargo update -p diesel_derives`
[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: this warning originates in the derive macro `QueryId` which comes from the expansion of the macro `table` (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/schema.rs:8:1
[INFO] [stdout]    |
[INFO] [stdout]  8 | / table! {
[INFO] [stdout]  9 | |     users (id) {
[INFO] [stdout] 10 | |         id -> Int4,
[INFO] [stdout] 11 | |         email -> Varchar,
[INFO] [stdout] ...  |
[INFO] [stdout] 14 | | }
[INFO] [stdout]    | | ^
[INFO] [stdout]    | | |
[INFO] [stdout]    | | `table` is not local
[INFO] [stdout]    | |_`QueryId` is not local
[INFO] [stdout]    |   move the `impl` block outside of this function `_impl_query_id_for_table`
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `QueryId` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `QueryId` may come from an old version of the `diesel_derives` crate, try updating your dependency with `cargo update -p diesel_derives`
[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: this warning originates in the derive macro `QueryId` which comes from the expansion of the macro `table` (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/schema.rs:8:1
[INFO] [stdout]    |
[INFO] [stdout]  8 | / table! {
[INFO] [stdout]  9 | |     users (id) {
[INFO] [stdout] 10 | |         id -> Int4,
[INFO] [stdout]    | |         -- `id` is not local
[INFO] [stdout] 11 | |         email -> Varchar,
[INFO] [stdout] ...  |
[INFO] [stdout] 14 | | }
[INFO] [stdout]    | | ^
[INFO] [stdout]    | | |
[INFO] [stdout]    | |_`QueryId` is not local
[INFO] [stdout]    |   move the `impl` block outside of this function `_impl_query_id_for_id`
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `QueryId` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `QueryId` may come from an old version of the `diesel_derives` crate, try updating your dependency with `cargo update -p diesel_derives`
[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: this warning originates in the derive macro `QueryId` which comes from the expansion of the macro `table` (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/schema.rs:8:1
[INFO] [stdout]    |
[INFO] [stdout]  8 | / table! {
[INFO] [stdout]  9 | |     users (id) {
[INFO] [stdout] 10 | |         id -> Int4,
[INFO] [stdout] 11 | |         email -> Varchar,
[INFO] [stdout]    | |         ----- `email` is not local
[INFO] [stdout] ...  |
[INFO] [stdout] 14 | | }
[INFO] [stdout]    | | ^
[INFO] [stdout]    | | |
[INFO] [stdout]    | |_`QueryId` is not local
[INFO] [stdout]    |   move the `impl` block outside of this function `_impl_query_id_for_email`
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `QueryId` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `QueryId` may come from an old version of the `diesel_derives` crate, try updating your dependency with `cargo update -p diesel_derives`
[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: this warning originates in the derive macro `QueryId` which comes from the expansion of the macro `table` (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/schema.rs:8:1
[INFO] [stdout]    |
[INFO] [stdout]  8 | / table! {
[INFO] [stdout]  9 | |     users (id) {
[INFO] [stdout] 10 | |         id -> Int4,
[INFO] [stdout] 11 | |         email -> Varchar,
[INFO] [stdout] 12 | |         password -> Varchar,
[INFO] [stdout]    | |         -------- `password` is not local
[INFO] [stdout] 13 | |     }
[INFO] [stdout] 14 | | }
[INFO] [stdout]    | | ^
[INFO] [stdout]    | | |
[INFO] [stdout]    | |_`QueryId` is not local
[INFO] [stdout]    |   move the `impl` block outside of this function `_impl_query_id_for_password`
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `QueryId` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `QueryId` may come from an old version of the `diesel_derives` crate, try updating your dependency with `cargo update -p diesel_derives`
[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: this warning originates in the derive macro `QueryId` which comes from the expansion of the macro `table` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 2.01s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: nom v4.2.3, v_htmlescape v0.4.5
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 1`
[INFO] running `Command { std: "docker" "inspect" "3ef3fb9bef7dd74724be16e952e31ba5a9d0e5417538decd70fd7be15eeb2420", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "3ef3fb9bef7dd74724be16e952e31ba5a9d0e5417538decd70fd7be15eeb2420", kill_on_drop: false }`
[INFO] [stdout] 3ef3fb9bef7dd74724be16e952e31ba5a9d0e5417538decd70fd7be15eeb2420
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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" "-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+33835004928d3bf65db4d4712e1330766263b0bd" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] a34f36a906f2555c57fdfb99ec5cb24e645942c56b1aa01a085ef9d865ebe9f9
[INFO] running `Command { std: "docker" "start" "-a" "a34f36a906f2555c57fdfb99ec5cb24e645942c56b1aa01a085ef9d865ebe9f9", kill_on_drop: false }`
[INFO] [stderr] warning: `package.edition` is unspecified, defaulting to `2015` while the latest is `2024`
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/auth.rs:25:22
[INFO] [stderr]    |
[INFO] [stderr] 25 |         for cause in Fail::iter_chain(fail) {
[INFO] [stderr]    |                      ^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr]    = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]    |
[INFO] [stderr] 25 |         for cause in <dyn Fail>::iter_chain(fail) {
[INFO] [stderr]    |                      ++++     +
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/db/token.rs:37:21
[INFO] [stderr]    |
[INFO] [stderr] 37 |                 let mut tokens = self.by_user_id.get_mut(user_id).unwrap();
[INFO] [stderr]    |                     ----^^^^^^
[INFO] [stderr]    |                     |
[INFO] [stderr]    |                     help: remove this `mut`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/auth.rs:40:10
[INFO] [stderr]    |
[INFO] [stderr] 40 | #[derive(Fail, Debug)]
[INFO] [stderr]    |          ^---
[INFO] [stderr]    |          |
[INFO] [stderr]    |          `Fail` is not local
[INFO] [stderr]    |          move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_AuthError`
[INFO] [stderr] 41 | pub enum AuthError {
[INFO] [stderr]    |          --------- `AuthError` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = 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] [stderr]    = 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] [stderr]    = 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] [stderr]    = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stderr]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/auth.rs:40:10
[INFO] [stderr]    |
[INFO] [stderr] 40 | #[derive(Fail, Debug)]
[INFO] [stderr]    |          ^---
[INFO] [stderr]    |          |
[INFO] [stderr]    |          `Display` is not local
[INFO] [stderr]    |          move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_AuthError`
[INFO] [stderr] 41 | pub enum AuthError {
[INFO] [stderr]    |          --------- `AuthError` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = 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] [stderr]    = 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] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/db/mod.rs:31:17
[INFO] [stderr]    |
[INFO] [stderr] 31 | #[derive(Debug, Fail)]
[INFO] [stderr]    |                 ^---
[INFO] [stderr]    |                 |
[INFO] [stderr]    |                 `Fail` is not local
[INFO] [stderr]    |                 move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_DatabaseError`
[INFO] [stderr] 32 | pub enum DatabaseError {
[INFO] [stderr]    |          ------------- `DatabaseError` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = 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] [stderr]    = 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] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/db/mod.rs:31:17
[INFO] [stderr]    |
[INFO] [stderr] 31 | #[derive(Debug, Fail)]
[INFO] [stderr]    |                 ^---
[INFO] [stderr]    |                 |
[INFO] [stderr]    |                 `Display` is not local
[INFO] [stderr]    |                 move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_DatabaseError`
[INFO] [stderr] 32 | pub enum DatabaseError {
[INFO] [stderr]    |          ------------- `DatabaseError` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = 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] [stderr]    = 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] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/handlers/account/create.rs:16:10
[INFO] [stderr]    |
[INFO] [stderr] 16 | #[derive(Fail, Debug)]
[INFO] [stderr]    |          ^---
[INFO] [stderr]    |          |
[INFO] [stderr]    |          `Fail` is not local
[INFO] [stderr]    |          move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_AccountCreateError`
[INFO] [stderr] 17 | pub enum AccountCreateError {
[INFO] [stderr]    |          ------------------ `AccountCreateError` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = 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] [stderr]    = 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] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/handlers/account/create.rs:16:10
[INFO] [stderr]    |
[INFO] [stderr] 16 | #[derive(Fail, Debug)]
[INFO] [stderr]    |          ^---
[INFO] [stderr]    |          |
[INFO] [stderr]    |          `Display` is not local
[INFO] [stderr]    |          move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_AccountCreateError`
[INFO] [stderr] 17 | pub enum AccountCreateError {
[INFO] [stderr]    |          ------------------ `AccountCreateError` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = 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] [stderr]    = 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] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/handlers/account/login.rs:16:17
[INFO] [stderr]    |
[INFO] [stderr] 16 | #[derive(Debug, Fail, Serialize)]
[INFO] [stderr]    |                 ^---
[INFO] [stderr]    |                 |
[INFO] [stderr]    |                 `Fail` is not local
[INFO] [stderr]    |                 move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_SessionCreateError`
[INFO] [stderr] 17 | pub enum SessionCreateError {
[INFO] [stderr]    |          ------------------ `SessionCreateError` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = 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] [stderr]    = 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] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/handlers/account/login.rs:16:17
[INFO] [stderr]    |
[INFO] [stderr] 16 | #[derive(Debug, Fail, Serialize)]
[INFO] [stderr]    |                 ^---
[INFO] [stderr]    |                 |
[INFO] [stderr]    |                 `Display` is not local
[INFO] [stderr]    |                 move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_SessionCreateError`
[INFO] [stderr] 17 | pub enum SessionCreateError {
[INFO] [stderr]    |          ------------------ `SessionCreateError` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = 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] [stderr]    = 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] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: call to `.clone()` on a reference in this situation does nothing
[INFO] [stderr]   --> src/handlers/account/login.rs:61:60
[INFO] [stderr]    |
[INFO] [stderr] 61 |             .filter(users::password.eq(new_account.password.clone()))
[INFO] [stderr]    |                                                            ^^^^^^^^ help: remove this redundant call
[INFO] [stderr]    |
[INFO] [stderr]    = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed
[INFO] [stderr]    = note: `#[warn(noop_method_call)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]  --> src/models.rs:7:10
[INFO] [stderr]   |
[INFO] [stderr] 7 | #[derive(Queryable, Serialize, Deserialize, Associations, Identifiable, Debug)]
[INFO] [stderr]   |          ^--------
[INFO] [stderr]   |          |
[INFO] [stderr]   |          `Queryable` is not local
[INFO] [stderr]   |          move the `impl` block outside of this function `_impl_queryable_for_user`
[INFO] [stderr] 8 | pub struct User {
[INFO] [stderr]   |            ---- `User` is not local
[INFO] [stderr]   |
[INFO] [stderr]   = note: the derive macro `Queryable` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]   = note: the derive macro `Queryable` may come from an old version of the `diesel_derives` crate, try updating your dependency with `cargo update -p diesel_derives`
[INFO] [stderr]   = 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] [stderr]   = note: this warning originates in the derive macro `Queryable` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]  --> src/models.rs:7:59
[INFO] [stderr]   |
[INFO] [stderr] 7 | #[derive(Queryable, Serialize, Deserialize, Associations, Identifiable, Debug)]
[INFO] [stderr]   |                                                           ^-----------
[INFO] [stderr]   |                                                           |
[INFO] [stderr]   |                                                           `HasTable` is not local
[INFO] [stderr]   |                                                           move the `impl` block outside of this function `_impl_identifiable_for_user`
[INFO] [stderr] 8 | pub struct User {
[INFO] [stderr]   |            ---- `User` is not local
[INFO] [stderr]   |
[INFO] [stderr]   = note: the derive macro `Identifiable` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]   = note: the derive macro `Identifiable` may come from an old version of the `diesel_derives` crate, try updating your dependency with `cargo update -p diesel_derives`
[INFO] [stderr]   = 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] [stderr]   = note: this warning originates in the derive macro `Identifiable` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]  --> src/models.rs:7:59
[INFO] [stderr]   |
[INFO] [stderr] 7 | #[derive(Queryable, Serialize, Deserialize, Associations, Identifiable, Debug)]
[INFO] [stderr]   |                                                           ^^^^^^^^^^^^
[INFO] [stderr]   |                                                           |
[INFO] [stderr]   |                                                           `Identifiable` is not local
[INFO] [stderr]   |                                                           move the `impl` block outside of this function `_impl_identifiable_for_user`
[INFO] [stderr] 8 | pub struct User {
[INFO] [stderr]   |            ---- `User` is not local
[INFO] [stderr]   |
[INFO] [stderr]   = note: the derive macro `Identifiable` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]   = note: the derive macro `Identifiable` may come from an old version of the `diesel_derives` crate, try updating your dependency with `cargo update -p diesel_derives`
[INFO] [stderr]   = 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] [stderr]   = note: this warning originates in the derive macro `Identifiable` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/models.rs:14:23
[INFO] [stderr]    |
[INFO] [stderr] 14 | #[derive(Deserialize, Insertable, Queryable)]
[INFO] [stderr]    |                       ^---------
[INFO] [stderr]    |                       |
[INFO] [stderr]    |                       `Insertable` is not local
[INFO] [stderr]    |                       `table` is not local
[INFO] [stderr]    |                       move the `impl` block outside of this function `_impl_insertable_for_usernew`
[INFO] [stderr] 15 | #[table_name = "users"]
[INFO] [stderr] 16 | pub struct UserNew<'a> {
[INFO] [stderr]    |            ------- `UserNew` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `Insertable` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the derive macro `Insertable` may come from an old version of the `diesel_derives` crate, try updating your dependency with `cargo update -p diesel_derives`
[INFO] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `Insertable` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/models.rs:14:23
[INFO] [stderr]    |
[INFO] [stderr] 14 | #[derive(Deserialize, Insertable, Queryable)]
[INFO] [stderr]    |                       -^^^^^^^^^
[INFO] [stderr]    |                       |
[INFO] [stderr]    |                       `Insertable` is not local
[INFO] [stderr]    |                       `table` is not local
[INFO] [stderr]    |                       move the `impl` block outside of this function `_impl_insertable_for_usernew`
[INFO] [stderr] 15 | #[table_name = "users"]
[INFO] [stderr] 16 | pub struct UserNew<'a> {
[INFO] [stderr]    |            ------- `UserNew` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `Insertable` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the derive macro `Insertable` may come from an old version of the `diesel_derives` crate, try updating your dependency with `cargo update -p diesel_derives`
[INFO] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `Insertable` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/models.rs:14:23
[INFO] [stderr]    |
[INFO] [stderr] 14 | #[derive(Deserialize, Insertable, Queryable)]
[INFO] [stderr]    |                       ^---------
[INFO] [stderr]    |                       |
[INFO] [stderr]    |                       `UndecoratedInsertRecord` is not local
[INFO] [stderr]    |                       `table` is not local
[INFO] [stderr]    |                       move the `impl` block outside of this function `_impl_insertable_for_usernew`
[INFO] [stderr] 15 | #[table_name = "users"]
[INFO] [stderr] 16 | pub struct UserNew<'a> {
[INFO] [stderr]    |            ------- `UserNew` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `Insertable` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the derive macro `Insertable` may come from an old version of the `diesel_derives` crate, try updating your dependency with `cargo update -p diesel_derives`
[INFO] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `Insertable` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/models.rs:14:35
[INFO] [stderr]    |
[INFO] [stderr] 14 | #[derive(Deserialize, Insertable, Queryable)]
[INFO] [stderr]    |                                   ^--------
[INFO] [stderr]    |                                   |
[INFO] [stderr]    |                                   `Queryable` is not local
[INFO] [stderr]    |                                   move the `impl` block outside of this function `_impl_queryable_for_usernew`
[INFO] [stderr] 15 | #[table_name = "users"]
[INFO] [stderr] 16 | pub struct UserNew<'a> {
[INFO] [stderr]    |            ------- `UserNew` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `Queryable` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the derive macro `Queryable` may come from an old version of the `diesel_derives` crate, try updating your dependency with `cargo update -p diesel_derives`
[INFO] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `Queryable` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/models.rs:21:17
[INFO] [stderr]    |
[INFO] [stderr] 21 | #[derive(Debug, Queryable, Serialize, Insertable, Deserialize, Associations, Identifiable)]
[INFO] [stderr]    |                 ^--------
[INFO] [stderr]    |                 |
[INFO] [stderr]    |                 `Queryable` is not local
[INFO] [stderr]    |                 move the `impl` block outside of this function `_impl_queryable_for_token`
[INFO] [stderr] ...
[INFO] [stderr] 24 | pub struct Token {
[INFO] [stderr]    |            ----- `Token` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `Queryable` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the derive macro `Queryable` may come from an old version of the `diesel_derives` crate, try updating your dependency with `cargo update -p diesel_derives`
[INFO] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `Queryable` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/models.rs:21:39
[INFO] [stderr]    |
[INFO] [stderr] 21 | #[derive(Debug, Queryable, Serialize, Insertable, Deserialize, Associations, Identifiable)]
[INFO] [stderr]    |                                       ^---------
[INFO] [stderr]    |                                       |
[INFO] [stderr]    |                                       `Insertable` is not local
[INFO] [stderr]    |                                       `table` is not local
[INFO] [stderr]    |                                       move the `impl` block outside of this function `_impl_insertable_for_token`
[INFO] [stderr] ...
[INFO] [stderr] 24 | pub struct Token {
[INFO] [stderr]    |            ----- `Token` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `Insertable` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the derive macro `Insertable` may come from an old version of the `diesel_derives` crate, try updating your dependency with `cargo update -p diesel_derives`
[INFO] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `Insertable` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/models.rs:21:39
[INFO] [stderr]    |
[INFO] [stderr] 21 | #[derive(Debug, Queryable, Serialize, Insertable, Deserialize, Associations, Identifiable)]
[INFO] [stderr]    |                                       -^^^^^^^^^
[INFO] [stderr]    |                                       |
[INFO] [stderr]    |                                       `Insertable` is not local
[INFO] [stderr]    |                                       `table` is not local
[INFO] [stderr]    |                                       move the `impl` block outside of this function `_impl_insertable_for_token`
[INFO] [stderr] ...
[INFO] [stderr] 24 | pub struct Token {
[INFO] [stderr]    |            ----- `Token` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `Insertable` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the derive macro `Insertable` may come from an old version of the `diesel_derives` crate, try updating your dependency with `cargo update -p diesel_derives`
[INFO] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `Insertable` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/models.rs:21:39
[INFO] [stderr]    |
[INFO] [stderr] 21 | #[derive(Debug, Queryable, Serialize, Insertable, Deserialize, Associations, Identifiable)]
[INFO] [stderr]    |                                       ^---------
[INFO] [stderr]    |                                       |
[INFO] [stderr]    |                                       `UndecoratedInsertRecord` is not local
[INFO] [stderr]    |                                       `table` is not local
[INFO] [stderr]    |                                       move the `impl` block outside of this function `_impl_insertable_for_token`
[INFO] [stderr] ...
[INFO] [stderr] 24 | pub struct Token {
[INFO] [stderr]    |            ----- `Token` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `Insertable` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the derive macro `Insertable` may come from an old version of the `diesel_derives` crate, try updating your dependency with `cargo update -p diesel_derives`
[INFO] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `Insertable` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/models.rs:21:64
[INFO] [stderr]    |
[INFO] [stderr] 21 | #[derive(Debug, Queryable, Serialize, Insertable, Deserialize, Associations, Identifiable)]
[INFO] [stderr]    |                                                                ^-----------
[INFO] [stderr]    |                                                                |
[INFO] [stderr]    |                                                                `BelongsTo` is not local
[INFO] [stderr]    |                                                                move the `impl` block outside of this function `_impl_associations_for_token`
[INFO] [stderr] 22 | #[belongs_to(User)]
[INFO] [stderr]    |              ---- `User` is not local
[INFO] [stderr] 23 | #[primary_key(token)]
[INFO] [stderr] 24 | pub struct Token {
[INFO] [stderr]    |            ----- `Token` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `Associations` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the derive macro `Associations` may come from an old version of the `diesel_derives` crate, try updating your dependency with `cargo update -p diesel_derives`
[INFO] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `Associations` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/models.rs:21:78
[INFO] [stderr]    |
[INFO] [stderr] 21 | #[derive(Debug, Queryable, Serialize, Insertable, Deserialize, Associations, Identifiable)]
[INFO] [stderr]    |                                                                              ^-----------
[INFO] [stderr]    |                                                                              |
[INFO] [stderr]    |                                                                              `HasTable` is not local
[INFO] [stderr]    |                                                                              move the `impl` block outside of this function `_impl_identifiable_for_token`
[INFO] [stderr] ...
[INFO] [stderr] 24 | pub struct Token {
[INFO] [stderr]    |            ----- `Token` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `Identifiable` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the derive macro `Identifiable` may come from an old version of the `diesel_derives` crate, try updating your dependency with `cargo update -p diesel_derives`
[INFO] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `Identifiable` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/models.rs:21:78
[INFO] [stderr]    |
[INFO] [stderr] 21 | #[derive(Debug, Queryable, Serialize, Insertable, Deserialize, Associations, Identifiable)]
[INFO] [stderr]    |                                                                              ^^^^^^^^^^^^
[INFO] [stderr]    |                                                                              |
[INFO] [stderr]    |                                                                              `Identifiable` is not local
[INFO] [stderr]    |                                                                              move the `impl` block outside of this function `_impl_identifiable_for_token`
[INFO] [stderr] ...
[INFO] [stderr] 24 | pub struct Token {
[INFO] [stderr]    |            ----- `Token` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `Identifiable` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the derive macro `Identifiable` may come from an old version of the `diesel_derives` crate, try updating your dependency with `cargo update -p diesel_derives`
[INFO] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `Identifiable` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/routes/account_session.rs:20:17
[INFO] [stderr]    |
[INFO] [stderr] 20 | #[derive(Debug, Fail, Serialize)]
[INFO] [stderr]    |                 ^---
[INFO] [stderr]    |                 |
[INFO] [stderr]    |                 `Fail` is not local
[INFO] [stderr]    |                 move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_CreateSessionError`
[INFO] [stderr] 21 | pub enum CreateSessionError {
[INFO] [stderr]    |          ------------------ `CreateSessionError` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = 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] [stderr]    = 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] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/routes/account_session.rs:20:17
[INFO] [stderr]    |
[INFO] [stderr] 20 | #[derive(Debug, Fail, Serialize)]
[INFO] [stderr]    |                 ^---
[INFO] [stderr]    |                 |
[INFO] [stderr]    |                 `Display` is not local
[INFO] [stderr]    |                 move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_CreateSessionError`
[INFO] [stderr] 21 | pub enum CreateSessionError {
[INFO] [stderr]    |          ------------------ `CreateSessionError` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = 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] [stderr]    = 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] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]  --> src/schema.rs:1:1
[INFO] [stderr]   |
[INFO] [stderr] 1 | / table! {
[INFO] [stderr] 2 | |     tokens (token) {
[INFO] [stderr] 3 | |         token -> Varchar,
[INFO] [stderr] 4 | |         user_id -> Int4,
[INFO] [stderr] 5 | |     }
[INFO] [stderr] 6 | | }
[INFO] [stderr]   | | ^
[INFO] [stderr]   | | |
[INFO] [stderr]   | | `table` is not local
[INFO] [stderr]   | |_`QueryId` is not local
[INFO] [stderr]   |   move the `impl` block outside of this function `_impl_query_id_for_table`
[INFO] [stderr]   |
[INFO] [stderr]   = note: the derive macro `QueryId` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]   = note: the derive macro `QueryId` may come from an old version of the `diesel_derives` crate, try updating your dependency with `cargo update -p diesel_derives`
[INFO] [stderr]   = 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] [stderr]   = note: this warning originates in the derive macro `QueryId` which comes from the expansion of the macro `table` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]  --> src/schema.rs:1:1
[INFO] [stderr]   |
[INFO] [stderr] 1 | / table! {
[INFO] [stderr] 2 | |     tokens (token) {
[INFO] [stderr] 3 | |         token -> Varchar,
[INFO] [stderr]   | |         ----- `token` is not local
[INFO] [stderr] 4 | |         user_id -> Int4,
[INFO] [stderr] 5 | |     }
[INFO] [stderr] 6 | | }
[INFO] [stderr]   | | ^
[INFO] [stderr]   | | |
[INFO] [stderr]   | |_`QueryId` is not local
[INFO] [stderr]   |   move the `impl` block outside of this function `_impl_query_id_for_token`
[INFO] [stderr]   |
[INFO] [stderr]   = note: the derive macro `QueryId` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]   = note: the derive macro `QueryId` may come from an old version of the `diesel_derives` crate, try updating your dependency with `cargo update -p diesel_derives`
[INFO] [stderr]   = 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] [stderr]   = note: this warning originates in the derive macro `QueryId` which comes from the expansion of the macro `table` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]  --> src/schema.rs:1:1
[INFO] [stderr]   |
[INFO] [stderr] 1 | / table! {
[INFO] [stderr] 2 | |     tokens (token) {
[INFO] [stderr] 3 | |         token -> Varchar,
[INFO] [stderr] 4 | |         user_id -> Int4,
[INFO] [stderr]   | |         ------- `user_id` is not local
[INFO] [stderr] 5 | |     }
[INFO] [stderr] 6 | | }
[INFO] [stderr]   | | ^
[INFO] [stderr]   | | |
[INFO] [stderr]   | |_`QueryId` is not local
[INFO] [stderr]   |   move the `impl` block outside of this function `_impl_query_id_for_user_id`
[INFO] [stderr]   |
[INFO] [stderr]   = note: the derive macro `QueryId` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]   = note: the derive macro `QueryId` may come from an old version of the `diesel_derives` crate, try updating your dependency with `cargo update -p diesel_derives`
[INFO] [stderr]   = 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] [stderr]   = note: this warning originates in the derive macro `QueryId` which comes from the expansion of the macro `table` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/schema.rs:8:1
[INFO] [stderr]    |
[INFO] [stderr]  8 | / table! {
[INFO] [stderr]  9 | |     users (id) {
[INFO] [stderr] 10 | |         id -> Int4,
[INFO] [stderr] 11 | |         email -> Varchar,
[INFO] [stderr] ...  |
[INFO] [stderr] 14 | | }
[INFO] [stderr]    | | ^
[INFO] [stderr]    | | |
[INFO] [stderr]    | | `table` is not local
[INFO] [stderr]    | |_`QueryId` is not local
[INFO] [stderr]    |   move the `impl` block outside of this function `_impl_query_id_for_table`
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `QueryId` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the derive macro `QueryId` may come from an old version of the `diesel_derives` crate, try updating your dependency with `cargo update -p diesel_derives`
[INFO] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `QueryId` which comes from the expansion of the macro `table` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/schema.rs:8:1
[INFO] [stderr]    |
[INFO] [stderr]  8 | / table! {
[INFO] [stderr]  9 | |     users (id) {
[INFO] [stderr] 10 | |         id -> Int4,
[INFO] [stderr]    | |         -- `id` is not local
[INFO] [stderr] 11 | |         email -> Varchar,
[INFO] [stderr] ...  |
[INFO] [stderr] 14 | | }
[INFO] [stderr]    | | ^
[INFO] [stderr]    | | |
[INFO] [stderr]    | |_`QueryId` is not local
[INFO] [stderr]    |   move the `impl` block outside of this function `_impl_query_id_for_id`
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `QueryId` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the derive macro `QueryId` may come from an old version of the `diesel_derives` crate, try updating your dependency with `cargo update -p diesel_derives`
[INFO] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `QueryId` which comes from the expansion of the macro `table` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/schema.rs:8:1
[INFO] [stderr]    |
[INFO] [stderr]  8 | / table! {
[INFO] [stderr]  9 | |     users (id) {
[INFO] [stderr] 10 | |         id -> Int4,
[INFO] [stderr] 11 | |         email -> Varchar,
[INFO] [stderr]    | |         ----- `email` is not local
[INFO] [stderr] ...  |
[INFO] [stderr] 14 | | }
[INFO] [stderr]    | | ^
[INFO] [stderr]    | | |
[INFO] [stderr]    | |_`QueryId` is not local
[INFO] [stderr]    |   move the `impl` block outside of this function `_impl_query_id_for_email`
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `QueryId` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the derive macro `QueryId` may come from an old version of the `diesel_derives` crate, try updating your dependency with `cargo update -p diesel_derives`
[INFO] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `QueryId` which comes from the expansion of the macro `table` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/schema.rs:8:1
[INFO] [stderr]    |
[INFO] [stderr]  8 | / table! {
[INFO] [stderr]  9 | |     users (id) {
[INFO] [stderr] 10 | |         id -> Int4,
[INFO] [stderr] 11 | |         email -> Varchar,
[INFO] [stderr] 12 | |         password -> Varchar,
[INFO] [stderr]    | |         -------- `password` is not local
[INFO] [stderr] 13 | |     }
[INFO] [stderr] 14 | | }
[INFO] [stderr]    | | ^
[INFO] [stderr]    | | |
[INFO] [stderr]    | |_`QueryId` is not local
[INFO] [stderr]    |   move the `impl` block outside of this function `_impl_query_id_for_password`
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `QueryId` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the derive macro `QueryId` may come from an old version of the `diesel_derives` crate, try updating your dependency with `cargo update -p diesel_derives`
[INFO] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `QueryId` which comes from the expansion of the macro `table` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: `howtocards` (lib) generated 34 warnings (run `cargo fix --lib -p howtocards` to apply 3 suggestions)
[INFO] [stderr] warning: `howtocards` (lib test) generated 34 warnings (34 duplicates)
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/main.rs:10:10
[INFO] [stderr]    |
[INFO] [stderr] 10 | #[derive(Fail, Debug)]
[INFO] [stderr]    |          ^---
[INFO] [stderr]    |          |
[INFO] [stderr]    |          `Fail` is not local
[INFO] [stderr]    |          move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_StartErr`
[INFO] [stderr] 11 | enum StartErr {
[INFO] [stderr]    |      -------- `StartErr` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = 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] [stderr]    = 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] [stderr]    = 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] [stderr]    = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stderr]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/main.rs:10:10
[INFO] [stderr]    |
[INFO] [stderr] 10 | #[derive(Fail, Debug)]
[INFO] [stderr]    |          ^---
[INFO] [stderr]    |          |
[INFO] [stderr]    |          `Display` is not local
[INFO] [stderr]    |          move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_StartErr`
[INFO] [stderr] 11 | enum StartErr {
[INFO] [stderr]    |      -------- `StartErr` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = 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] [stderr]    = 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] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: `howtocards` (bin "howtocards_server" test) generated 2 warnings
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.40s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: nom v4.2.3, v_htmlescape v0.4.5
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 1`
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/howtocards-d1e1846334fc504c)
[INFO] [stdout] 
[INFO] [stdout] running 4 tests
[INFO] [stdout] test hasher::test::hash_password_use_hash_string ... ok
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/howtocards_server-4b8016f6a444ab2b)
[INFO] [stdout] test hasher::test::hash_string_should_get_different_results_for_different_input ... ok
[INFO] [stdout] test db::token::test::create_token_returns_different_tokens ... ok
[INFO] [stdout] test hasher::test::hash_string_should_get_equal_results_for_equal_input ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests howtocards
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 4 tests
[INFO] [stdout] test src/auth.rs - auth::Auth (line 67) ... ok
[INFO] [stdout] test src/prelude.rs - prelude::ResultExt::or_err (line 11) ... ok
[INFO] [stdout] test src/auth.rs - auth::AuthOptional (line 105) ... ok
[INFO] [stdout] test src/hasher.rs - hasher::hash_string (line 10) ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 1.62s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "a34f36a906f2555c57fdfb99ec5cb24e645942c56b1aa01a085ef9d865ebe9f9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a34f36a906f2555c57fdfb99ec5cb24e645942c56b1aa01a085ef9d865ebe9f9", kill_on_drop: false }`
[INFO] [stdout] a34f36a906f2555c57fdfb99ec5cb24e645942c56b1aa01a085ef9d865ebe9f9
