[INFO] cloning repository https://github.com/AstridMN/MyRustApp2
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/AstridMN/MyRustApp2" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAstridMN%2FMyRustApp2", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAstridMN%2FMyRustApp2'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 9c3e5f3d740d9539849506c12681d68165c3e654
[INFO] building AstridMN/MyRustApp2 against master#ad211ced81509462cdfe4c29ed10f97279a0acae for pr-135216
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAstridMN%2FMyRustApp2" "/workspace/builds/worker-2-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc1/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/AstridMN/MyRustApp2 on toolchain ad211ced81509462cdfe4c29ed10f97279a0acae
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+ad211ced81509462cdfe4c29ed10f97279a0acae" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/AstridMN/MyRustApp2
[INFO] finished tweaking git repo https://github.com/AstridMN/MyRustApp2
[INFO] tweaked toml for git repo https://github.com/AstridMN/MyRustApp2 written to /workspace/builds/worker-2-tc1/source/Cargo.toml
[INFO] crate git repo https://github.com/AstridMN/MyRustApp2 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+ad211ced81509462cdfe4c29ed10f97279a0acae" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded yew-router v0.11.0
[INFO] [stderr]   Downloaded yew-router-macro v0.11.0
[INFO] [stderr]   Downloaded futures v0.3.5
[INFO] [stderr]   Downloaded lexical-core v0.6.2
[INFO] [stderr]   Downloaded actix_derive v0.5.0
[INFO] [stderr]   Downloaded actix-cors v0.2.0
[INFO] [stderr]   Downloaded miniz_oxide v0.3.6
[INFO] [stderr]   Downloaded crossbeam-channel v0.4.2
[INFO] [stderr]   Downloaded trust-dns-resolver v0.18.0-alpha.2
[INFO] [stderr]   Downloaded actix-web v2.0.0
[INFO] [stderr]   Downloaded trust-dns-proto v0.18.0-alpha.2
[INFO] [stderr]   Downloaded actix-http v1.0.1
[INFO] [stderr]   Downloaded thread_local v1.0.1
[INFO] [stderr]   Downloaded linked-hash-map v0.5.3
[INFO] [stderr]   Downloaded futures-channel v0.3.5
[INFO] [stderr]   Downloaded actix-http-test v1.0.0
[INFO] [stderr]   Downloaded backtrace v0.3.48
[INFO] [stderr]   Downloaded syn v1.0.23
[INFO] [stderr]   Downloaded security-framework v0.4.4
[INFO] [stderr]   Downloaded openssl-sys v0.9.56
[INFO] [stderr]   Downloaded pin-project-lite v0.1.5
[INFO] [stderr]   Downloaded js-sys v0.3.39
[INFO] [stderr]   Downloaded bumpalo v3.3.0
[INFO] [stderr]   Downloaded regex v1.3.7
[INFO] [stderr]   Downloaded signal-hook-registry v1.2.0
[INFO] [stderr]   Downloaded security-framework-sys v0.4.3
[INFO] [stderr]   Downloaded remove_dir_all v0.5.2
[INFO] [stderr]   Downloaded regex-syntax v0.6.17
[INFO] [stderr]   Downloaded wasm-bindgen-futures v0.4.12
[INFO] [stderr]   Downloaded wasm-bindgen v0.2.62
[INFO] [stderr]   Downloaded tokio v0.2.21
[INFO] [stderr]   Downloaded serde_json v1.0.53
[INFO] [stderr]   Downloaded tempfile v3.1.0
[INFO] [stderr]   Downloaded native-tls v0.2.4
[INFO] [stderr]   Downloaded encoding_rs v0.8.23
[INFO] [stderr]   Downloaded arc-swap v0.4.6
[INFO] [stderr]   Downloaded wasm-bindgen-backend v0.2.62
[INFO] [stderr]   Downloaded wasm-bindgen-macro-support v0.2.62
[INFO] [stderr]   Downloaded serde v1.0.110
[INFO] [stderr]   Downloaded wasm-bindgen-shared v0.2.62
[INFO] [stderr]   Downloaded proc-macro2 v1.0.13
[INFO] [stderr]   Downloaded quote v1.0.6
[INFO] [stderr]   Downloaded async-trait v0.1.31
[INFO] [stderr]   Downloaded brotli-sys v0.3.2
[INFO] [stderr]   Downloaded pem v0.7.0
[INFO] [stderr]   Downloaded once_cell v1.4.0
[INFO] [stderr]   Downloaded tower-service v0.3.0
[INFO] [stderr]   Downloaded proc-macro-hack v0.5.15
[INFO] [stderr]   Downloaded yew v0.14.3
[INFO] [stderr]   Downloaded chrono v0.4.11
[INFO] [stderr]   Downloaded num-traits v0.2.11
[INFO] [stderr]   Downloaded simple_asn1 v0.4.0
[INFO] [stderr]   Downloaded futures-io v0.3.5
[INFO] [stderr]   Downloaded futures-macro v0.3.5
[INFO] [stderr]   Downloaded futures-sink v0.3.5
[INFO] [stderr]   Downloaded h2 v0.2.5
[INFO] [stderr]   Downloaded openssl v0.10.29
[INFO] [stderr]   Downloaded web-sys v0.3.39
[INFO] [stderr]   Downloaded clap v2.33.1
[INFO] [stderr]   Downloaded num-integer v0.1.42
[INFO] [stderr]   Downloaded jsonwebtoken v7.1.0
[INFO] [stderr]   Downloaded pin-project-internal v0.4.17
[INFO] [stderr]   Downloaded pin-project v0.4.17
[INFO] [stderr]   Downloaded hyper v0.13.5
[INFO] [stderr]   Downloaded mime_guess v2.0.3
[INFO] [stderr]   Downloaded dtoa v0.4.5
[INFO] [stderr]   Downloaded serde_urlencoded v0.6.1
[INFO] [stderr]   Downloaded openssl-probe v0.1.2
[INFO] [stderr]   Downloaded mio v0.6.22
[INFO] [stderr]   Downloaded winreg v0.6.2
[INFO] [stderr]   Downloaded getrandom v0.1.14
[INFO] [stderr]   Downloaded uuid v0.8.1
[INFO] [stderr]   Downloaded object v0.19.0
[INFO] [stderr]   Downloaded futures-task v0.3.5
[INFO] [stderr]   Downloaded futures-util v0.3.5
[INFO] [stderr]   Downloaded try-lock v0.2.2
[INFO] [stderr]   Downloaded hyper-tls v0.4.1
[INFO] [stderr]   Downloaded futures-core v0.3.5
[INFO] [stderr]   Downloaded net2 v0.2.34
[INFO] [stderr]   Downloaded reqwest v0.10.4
[INFO] [stderr]   Downloaded ppv-lite86 v0.2.8
[INFO] [stderr]   Downloaded cc v1.0.54
[INFO] [stderr]   Downloaded hermit-abi v0.1.13
[INFO] [stderr]   Downloaded sass-sys v0.4.19
[INFO] [stderr]   Downloaded sass-rs v0.2.2
[INFO] [stderr]   Downloaded unicode-normalization v0.1.12
[INFO] [stderr]   Downloaded idna v0.2.0
[INFO] [stderr]   Downloaded libc v0.2.70
[INFO] [stderr]   Downloaded diesel v1.4.4
[INFO] [stderr]   Downloaded thiserror-impl v1.0.18
[INFO] [stderr]   Downloaded url v2.1.1
[INFO] [stderr]   Downloaded smallvec v1.4.0
[INFO] [stderr]   Downloaded scheduled-thread-pool v0.2.4
[INFO] [stderr]   Downloaded r2d2 v0.8.8
[INFO] [stderr]   Downloaded toml v0.5.6
[INFO] [stderr]   Downloaded anyhow v1.0.31
[INFO] [stderr]   Downloaded http v0.2.1
[INFO] [stderr]   Downloaded yew-router-route-parser v0.11.0
[INFO] [stderr]   Downloaded thiserror v1.0.18
[INFO] [stderr]   Downloaded serde_derive v1.0.110
[INFO] [stderr]   Downloaded wasm-bindgen-macro v0.2.62
[INFO] [stderr]   Downloaded addr2line v0.12.1
[INFO] [stderr]   Downloaded flate2 v1.0.14
[INFO] [stderr]   Downloaded anymap v0.12.1
[INFO] [stderr]   Downloaded bincode v1.2.1
[INFO] [stderr]   Downloaded cfg-match v0.2.1
[INFO] [stderr]   Downloaded bytes v0.5.4
[INFO] [stderr]   Downloaded autocfg v1.0.0
[INFO] [stderr]   Downloaded indexmap v1.3.2
[INFO] [stderr]   Downloaded proc-macro-nested v0.1.4
[INFO] [stderr]   Downloaded base-x v0.2.6
[INFO] [stderr]   Downloaded itoa v0.4.5
[INFO] [stderr]   Downloaded actix v0.9.0
[INFO] [stderr]   Downloaded awc v1.0.1
[INFO] [stderr]   Downloaded ring v0.16.13
[INFO] [stderr]   Downloaded derive_more v0.99.7
[INFO] [stderr]   Downloaded yew-macro v0.14.1
[INFO] [stderr]   Downloaded yaml-rust v0.3.5
[INFO] [stderr]   Downloaded termcolor v1.1.0
[INFO] [stderr]   Downloaded v_htmlescape v0.4.5
[INFO] [stderr]   Downloaded env_logger v0.6.2
[INFO] [stderr]   Downloaded actix-web-codegen v0.2.1
[INFO] [stderr]   Downloaded widestring v0.4.0
[INFO] [stderr]   Downloaded ipconfig v0.2.2
[INFO] [stderr]   Downloaded resolv-conf v0.6.3
[INFO] [stderr]   Downloaded socket2 v0.3.12
[INFO] [stderr]   Downloaded actix-connect v1.0.2
[INFO] [stderr]   Downloaded tokio-openssl v0.4.0
[INFO] [stderr]   Downloaded tokio-util v0.2.0
[INFO] [stderr]   Downloaded actix-codec v0.2.0
[INFO] [stderr]   Downloaded brotli2 v0.3.2
[INFO] [stderr]   Downloaded either v1.5.3
[INFO] [stderr]   Downloaded rustc-demangle v0.1.16
[INFO] [stderr]   Downloaded synstructure v0.12.3
[INFO] [stderr]   Downloaded failure v0.1.8
[INFO] [stderr]   Downloaded actix-macros v0.1.2
[INFO] [stderr]   Downloaded copyless v0.1.4
[INFO] [stderr]   Downloaded actix-rt v1.1.1
[INFO] [stderr]   Downloaded actix-service v1.0.5
[INFO] [stderr]   Downloaded unicode-width v0.1.7
[INFO] [stderr]   Downloaded humantime v1.3.0
[INFO] [stderr]   Downloaded env_logger v0.7.1
[INFO] [stderr]   Downloaded futures-executor v0.3.5
[INFO] [stderr]   Downloaded aho-corasick v0.7.10
[INFO] [stderr]   Downloaded v_escape_derive v0.5.6
[INFO] [stderr]   Downloaded v_escape v0.7.4
[INFO] [stderr]   Downloaded actix-files v0.2.1
[INFO] [stderr]   Downloaded bytestring v0.1.5
[INFO] [stderr]   Downloaded actix-router v0.2.4
[INFO] [stderr]   Downloaded actix-server v1.0.3
[INFO] [stderr]   Downloaded actix-testing v1.0.1
[INFO] [stderr]   Downloaded enum-as-inner v0.3.2
[INFO] [stderr]   Downloaded actix-tls v1.0.0
[INFO] [stderr]   Downloaded actix-utils v1.0.6
[INFO] [stderr]   Downloaded failure_derive v0.1.8
[INFO] [stderr]   Downloaded adler32 v1.0.4
[INFO] [stderr]   Downloaded actix-threadpool v0.3.2
[INFO] [stderr]   Downloaded nom v5.1.1
[INFO] [stderr]   Downloaded ryu v1.0.4
[INFO] [stderr]   Downloaded static_assertions v0.3.4
[INFO] [stderr]   Downloaded memchr v2.3.3
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+ad211ced81509462cdfe4c29ed10f97279a0acae" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] fd3ff146d2d31f87ac4daea58353ac67489181784a337c2ba548ca4e067bc4a2
[INFO] running `Command { std: "docker" "start" "-a" "fd3ff146d2d31f87ac4daea58353ac67489181784a337c2ba548ca4e067bc4a2", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "fd3ff146d2d31f87ac4daea58353ac67489181784a337c2ba548ca4e067bc4a2", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "fd3ff146d2d31f87ac4daea58353ac67489181784a337c2ba548ca4e067bc4a2", kill_on_drop: false }`
[INFO] [stdout] fd3ff146d2d31f87ac4daea58353ac67489181784a337c2ba548ca4e067bc4a2
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+ad211ced81509462cdfe4c29ed10f97279a0acae" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 4f4095f857632773b0041fcda5bc012e41f5264bd878d062afca1cecfa1e4524
[INFO] running `Command { std: "docker" "start" "-a" "4f4095f857632773b0041fcda5bc012e41f5264bd878d062afca1cecfa1e4524", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.13
[INFO] [stderr]    Compiling unicode-xid v0.2.0
[INFO] [stderr]    Compiling syn v1.0.23
[INFO] [stderr]    Compiling serde v1.0.110
[INFO] [stderr]    Compiling anyhow v1.0.31
[INFO] [stderr]    Compiling quote v1.0.6
[INFO] [stderr]    Compiling serde_derive v1.0.110
[INFO] [stderr]    Compiling toml v0.5.6
[INFO] [stderr]    Compiling webapp v1.0.0 (/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/config.rs:6:17
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[derive(Clone, Deserialize)]
[INFO] [stdout]   |                 ^----------
[INFO] [stdout]   |                 |
[INFO] [stdout]   |                 `Deserialize` is not local
[INFO] [stdout]   |                 move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Config`
[INFO] [stdout] 7 | /// The global configuration
[INFO] [stdout] 8 | pub struct Config {
[INFO] [stdout]   |            ------ `Config` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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/config.rs:28:17
[INFO] [stdout]    |
[INFO] [stdout] 28 | #[derive(Clone, Deserialize)]
[INFO] [stdout]    |                 ^----------
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Deserialize` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_ServerConfig`
[INFO] [stdout] ...
[INFO] [stdout] 31 | pub struct ServerConfig {
[INFO] [stdout]    |            ------------ `ServerConfig` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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/config.rs:45:17
[INFO] [stdout]    |
[INFO] [stdout] 45 | #[derive(Clone, Deserialize)]
[INFO] [stdout]    |                 ^----------
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Deserialize` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_LogConfig`
[INFO] [stdout] ...
[INFO] [stdout] 48 | pub struct LogConfig {
[INFO] [stdout]    |            --------- `LogConfig` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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/config.rs:56:17
[INFO] [stdout]    |
[INFO] [stdout] 56 | #[derive(Clone, Deserialize)]
[INFO] [stdout]    |                 ^----------
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Deserialize` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_PostgresConfig`
[INFO] [stdout] 57 | /// The database configuration
[INFO] [stdout] 58 | pub struct PostgresConfig {
[INFO] [stdout]    |            -------------- `PostgresConfig` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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/protocol/model.rs:9:28
[INFO] [stdout]    |
[INFO] [stdout] 9  | #[derive(Debug, PartialEq, Deserialize, Serialize)]
[INFO] [stdout]    |                            ^----------
[INFO] [stdout]    |                            |
[INFO] [stdout]    |                            `Deserialize` is not local
[INFO] [stdout]    |                            move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Session`
[INFO] [stdout] 10 | /// A session representation
[INFO] [stdout] 11 | pub struct Session {
[INFO] [stdout]    |            ------- `Session` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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/protocol/model.rs:9:41
[INFO] [stdout]    |
[INFO] [stdout] 9  | #[derive(Debug, PartialEq, Deserialize, Serialize)]
[INFO] [stdout]    |                                         ^--------
[INFO] [stdout]    |                                         |
[INFO] [stdout]    |                                         `Serialize` is not local
[INFO] [stdout]    |                                         move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Session`
[INFO] [stdout] 10 | /// A session representation
[INFO] [stdout] 11 | pub struct Session {
[INFO] [stdout]    |            ------- `Session` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` (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/protocol/request.rs:5:28
[INFO] [stdout]   |
[INFO] [stdout] 5 | #[derive(Debug, PartialEq, Deserialize, Serialize)]
[INFO] [stdout]   |                            ^----------
[INFO] [stdout]   |                            |
[INFO] [stdout]   |                            `Deserialize` is not local
[INFO] [stdout]   |                            move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_LoginCredentials`
[INFO] [stdout] 6 | /// The credentials based login request
[INFO] [stdout] 7 | pub struct LoginCredentials {
[INFO] [stdout]   |            ---------------- `LoginCredentials` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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/protocol/request.rs:5:41
[INFO] [stdout]   |
[INFO] [stdout] 5 | #[derive(Debug, PartialEq, Deserialize, Serialize)]
[INFO] [stdout]   |                                         ^--------
[INFO] [stdout]   |                                         |
[INFO] [stdout]   |                                         `Serialize` is not local
[INFO] [stdout]   |                                         move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_LoginCredentials`
[INFO] [stdout] 6 | /// The credentials based login request
[INFO] [stdout] 7 | pub struct LoginCredentials {
[INFO] [stdout]   |            ---------------- `LoginCredentials` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` (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/protocol/request.rs:15:28
[INFO] [stdout]    |
[INFO] [stdout] 15 | #[derive(Debug, PartialEq, Deserialize, Serialize)]
[INFO] [stdout]    |                            ^----------
[INFO] [stdout]    |                            |
[INFO] [stdout]    |                            `Deserialize` is not local
[INFO] [stdout]    |                            move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_LoginSession`
[INFO] [stdout] 16 | /// The session based login request
[INFO] [stdout] 17 | pub struct LoginSession(pub Session);
[INFO] [stdout]    |            ------------ `LoginSession` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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/protocol/request.rs:15:41
[INFO] [stdout]    |
[INFO] [stdout] 15 | #[derive(Debug, PartialEq, Deserialize, Serialize)]
[INFO] [stdout]    |                                         ^--------
[INFO] [stdout]    |                                         |
[INFO] [stdout]    |                                         `Serialize` is not local
[INFO] [stdout]    |                                         move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_LoginSession`
[INFO] [stdout] 16 | /// The session based login request
[INFO] [stdout] 17 | pub struct LoginSession(pub Session);
[INFO] [stdout]    |            ------------ `LoginSession` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` (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/protocol/request.rs:19:28
[INFO] [stdout]    |
[INFO] [stdout] 19 | #[derive(Debug, PartialEq, Deserialize, Serialize)]
[INFO] [stdout]    |                            ^----------
[INFO] [stdout]    |                            |
[INFO] [stdout]    |                            `Deserialize` is not local
[INFO] [stdout]    |                            move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Logout`
[INFO] [stdout] 20 | /// The logout request
[INFO] [stdout] 21 | pub struct Logout(pub Session);
[INFO] [stdout]    |            ------ `Logout` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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/protocol/request.rs:19:41
[INFO] [stdout]    |
[INFO] [stdout] 19 | #[derive(Debug, PartialEq, Deserialize, Serialize)]
[INFO] [stdout]    |                                         ^--------
[INFO] [stdout]    |                                         |
[INFO] [stdout]    |                                         `Serialize` is not local
[INFO] [stdout]    |                                         move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Logout`
[INFO] [stdout] 20 | /// The logout request
[INFO] [stdout] 21 | pub struct Logout(pub Session);
[INFO] [stdout]    |            ------ `Logout` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` (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/protocol/response.rs:5:28
[INFO] [stdout]   |
[INFO] [stdout] 5 | #[derive(Debug, PartialEq, Deserialize, Serialize)]
[INFO] [stdout]   |                            ^----------
[INFO] [stdout]   |                            |
[INFO] [stdout]   |                            `Deserialize` is not local
[INFO] [stdout]   |                            move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Login`
[INFO] [stdout] 6 | /// The login response
[INFO] [stdout] 7 | pub struct Login(pub Session);
[INFO] [stdout]   |            ----- `Login` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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/protocol/response.rs:5:41
[INFO] [stdout]   |
[INFO] [stdout] 5 | #[derive(Debug, PartialEq, Deserialize, Serialize)]
[INFO] [stdout]   |                                         ^--------
[INFO] [stdout]   |                                         |
[INFO] [stdout]   |                                         `Serialize` is not local
[INFO] [stdout]   |                                         move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Login`
[INFO] [stdout] 6 | /// The login response
[INFO] [stdout] 7 | pub struct Login(pub Session);
[INFO] [stdout]   |            ----- `Login` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` (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/protocol/response.rs:9:28
[INFO] [stdout]    |
[INFO] [stdout] 9  | #[derive(Debug, PartialEq, Deserialize, Serialize)]
[INFO] [stdout]    |                            ^----------
[INFO] [stdout]    |                            |
[INFO] [stdout]    |                            `Deserialize` is not local
[INFO] [stdout]    |                            move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Logout`
[INFO] [stdout] 10 | /// The logout response
[INFO] [stdout] 11 | pub struct Logout;
[INFO] [stdout]    |            ------ `Logout` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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/protocol/response.rs:9:41
[INFO] [stdout]    |
[INFO] [stdout] 9  | #[derive(Debug, PartialEq, Deserialize, Serialize)]
[INFO] [stdout]    |                                         ^--------
[INFO] [stdout]    |                                         |
[INFO] [stdout]    |                                         `Serialize` is not local
[INFO] [stdout]    |                                         move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Logout`
[INFO] [stdout] 10 | /// The logout response
[INFO] [stdout] 11 | pub struct Logout;
[INFO] [stdout]    |            ------ `Logout` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 15.74s
[INFO] running `Command { std: "docker" "inspect" "4f4095f857632773b0041fcda5bc012e41f5264bd878d062afca1cecfa1e4524", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "4f4095f857632773b0041fcda5bc012e41f5264bd878d062afca1cecfa1e4524", kill_on_drop: false }`
[INFO] [stdout] 4f4095f857632773b0041fcda5bc012e41f5264bd878d062afca1cecfa1e4524
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+ad211ced81509462cdfe4c29ed10f97279a0acae" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] bfceb23dfd274b81904081cba8d39e14a1aa673f5b29916bc912d3d9c149eec4
[INFO] running `Command { std: "docker" "start" "-a" "bfceb23dfd274b81904081cba8d39e14a1aa673f5b29916bc912d3d9c149eec4", kill_on_drop: false }`
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> src/config.rs:6:17
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[derive(Clone, Deserialize)]
[INFO] [stdout]   |                 ^----------
[INFO] [stdout]   |                 |
[INFO] [stdout]   |                 `Deserialize` is not local
[INFO] [stdout]   |                 move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Config`
[INFO] [stdout] 7 | /// The global configuration
[INFO] [stdout] 8 | pub struct Config {
[INFO] [stdout]   |            ------ `Config` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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/config.rs:28:17
[INFO] [stdout]    |
[INFO] [stdout] 28 | #[derive(Clone, Deserialize)]
[INFO] [stdout]    |                 ^----------
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Deserialize` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_ServerConfig`
[INFO] [stdout] ...
[INFO] [stdout] 31 | pub struct ServerConfig {
[INFO] [stdout]    |            ------------ `ServerConfig` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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/config.rs:45:17
[INFO] [stdout]    |
[INFO] [stdout] 45 | #[derive(Clone, Deserialize)]
[INFO] [stdout]    |                 ^----------
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Deserialize` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_LogConfig`
[INFO] [stdout] ...
[INFO] [stdout] 48 | pub struct LogConfig {
[INFO] [stdout]    |            --------- `LogConfig` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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/config.rs:56:17
[INFO] [stdout]    |
[INFO] [stdout] 56 | #[derive(Clone, Deserialize)]
[INFO] [stdout]    |                 ^----------
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Deserialize` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_PostgresConfig`
[INFO] [stdout] 57 | /// The database configuration
[INFO] [stdout] 58 | pub struct PostgresConfig {
[INFO] [stdout]    |            -------------- `PostgresConfig` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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/protocol/model.rs:9:28
[INFO] [stdout]    |
[INFO] [stdout] 9  | #[derive(Debug, PartialEq, Deserialize, Serialize)]
[INFO] [stdout]    |                            ^----------
[INFO] [stdout]    |                            |
[INFO] [stdout]    |                            `Deserialize` is not local
[INFO] [stdout]    |                            move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Session`
[INFO] [stdout] 10 | /// A session representation
[INFO] [stdout] 11 | pub struct Session {
[INFO] [stdout]    |            ------- `Session` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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/protocol/model.rs:9:41
[INFO] [stdout]    |
[INFO] [stdout] 9  | #[derive(Debug, PartialEq, Deserialize, Serialize)]
[INFO] [stdout]    |                                         ^--------
[INFO] [stdout]    |                                         |
[INFO] [stdout]    |                                         `Serialize` is not local
[INFO] [stdout]    |                                         move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Session`
[INFO] [stdout] 10 | /// A session representation
[INFO] [stdout] 11 | pub struct Session {
[INFO] [stdout]    |            ------- `Session` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` (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/protocol/request.rs:5:28
[INFO] [stdout]   |
[INFO] [stdout] 5 | #[derive(Debug, PartialEq, Deserialize, Serialize)]
[INFO] [stdout]   |                            ^----------
[INFO] [stdout]   |                            |
[INFO] [stdout]   |                            `Deserialize` is not local
[INFO] [stdout]   |                            move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_LoginCredentials`
[INFO] [stdout] 6 | /// The credentials based login request
[INFO] [stdout] 7 | pub struct LoginCredentials {
[INFO] [stdout]   |            ---------------- `LoginCredentials` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling webapp v1.0.0 (/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/protocol/request.rs:5:41
[INFO] [stdout]   |
[INFO] [stdout] 5 | #[derive(Debug, PartialEq, Deserialize, Serialize)]
[INFO] [stdout]   |                                         ^--------
[INFO] [stdout]   |                                         |
[INFO] [stdout]   |                                         `Serialize` is not local
[INFO] [stdout]   |                                         move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_LoginCredentials`
[INFO] [stdout] 6 | /// The credentials based login request
[INFO] [stdout] 7 | pub struct LoginCredentials {
[INFO] [stdout]   |            ---------------- `LoginCredentials` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` (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/protocol/request.rs:15:28
[INFO] [stdout]    |
[INFO] [stdout] 15 | #[derive(Debug, PartialEq, Deserialize, Serialize)]
[INFO] [stdout]    |                            ^----------
[INFO] [stdout]    |                            |
[INFO] [stdout]    |                            `Deserialize` is not local
[INFO] [stdout]    |                            move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_LoginSession`
[INFO] [stdout] 16 | /// The session based login request
[INFO] [stdout] 17 | pub struct LoginSession(pub Session);
[INFO] [stdout]    |            ------------ `LoginSession` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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/protocol/request.rs:15:41
[INFO] [stdout]    |
[INFO] [stdout] 15 | #[derive(Debug, PartialEq, Deserialize, Serialize)]
[INFO] [stdout]    |                                         ^--------
[INFO] [stdout]    |                                         |
[INFO] [stdout]    |                                         `Serialize` is not local
[INFO] [stdout]    |                                         move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_LoginSession`
[INFO] [stdout] 16 | /// The session based login request
[INFO] [stdout] 17 | pub struct LoginSession(pub Session);
[INFO] [stdout]    |            ------------ `LoginSession` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` (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/protocol/request.rs:19:28
[INFO] [stdout]    |
[INFO] [stdout] 19 | #[derive(Debug, PartialEq, Deserialize, Serialize)]
[INFO] [stdout]    |                            ^----------
[INFO] [stdout]    |                            |
[INFO] [stdout]    |                            `Deserialize` is not local
[INFO] [stdout]    |                            move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Logout`
[INFO] [stdout] 20 | /// The logout request
[INFO] [stdout] 21 | pub struct Logout(pub Session);
[INFO] [stdout]    |            ------ `Logout` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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/protocol/request.rs:19:41
[INFO] [stdout]    |
[INFO] [stdout] 19 | #[derive(Debug, PartialEq, Deserialize, Serialize)]
[INFO] [stdout]    |                                         ^--------
[INFO] [stdout]    |                                         |
[INFO] [stdout]    |                                         `Serialize` is not local
[INFO] [stdout]    |                                         move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Logout`
[INFO] [stdout] 20 | /// The logout request
[INFO] [stdout] 21 | pub struct Logout(pub Session);
[INFO] [stdout]    |            ------ `Logout` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` (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/protocol/response.rs:5:28
[INFO] [stdout]   |
[INFO] [stdout] 5 | #[derive(Debug, PartialEq, Deserialize, Serialize)]
[INFO] [stdout]   |                            ^----------
[INFO] [stdout]   |                            |
[INFO] [stdout]   |                            `Deserialize` is not local
[INFO] [stdout]   |                            move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Login`
[INFO] [stdout] 6 | /// The login response
[INFO] [stdout] 7 | pub struct Login(pub Session);
[INFO] [stdout]   |            ----- `Login` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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/protocol/response.rs:5:41
[INFO] [stdout]   |
[INFO] [stdout] 5 | #[derive(Debug, PartialEq, Deserialize, Serialize)]
[INFO] [stdout]   |                                         ^--------
[INFO] [stdout]   |                                         |
[INFO] [stdout]   |                                         `Serialize` is not local
[INFO] [stdout]   |                                         move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Login`
[INFO] [stdout] 6 | /// The login response
[INFO] [stdout] 7 | pub struct Login(pub Session);
[INFO] [stdout]   |            ----- `Login` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` (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/protocol/response.rs:9:28
[INFO] [stdout]    |
[INFO] [stdout] 9  | #[derive(Debug, PartialEq, Deserialize, Serialize)]
[INFO] [stdout]    |                            ^----------
[INFO] [stdout]    |                            |
[INFO] [stdout]    |                            `Deserialize` is not local
[INFO] [stdout]    |                            move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Logout`
[INFO] [stdout] 10 | /// The logout response
[INFO] [stdout] 11 | pub struct Logout;
[INFO] [stdout]    |            ------ `Logout` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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/protocol/response.rs:9:41
[INFO] [stdout]    |
[INFO] [stdout] 9  | #[derive(Debug, PartialEq, Deserialize, Serialize)]
[INFO] [stdout]    |                                         ^--------
[INFO] [stdout]    |                                         |
[INFO] [stdout]    |                                         `Serialize` is not local
[INFO] [stdout]    |                                         move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Logout`
[INFO] [stdout] 10 | /// The logout response
[INFO] [stdout] 11 | pub struct Logout;
[INFO] [stdout]    |            ------ `Logout` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` (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/config.rs:6:17
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[derive(Clone, Deserialize)]
[INFO] [stdout]   |                 ^----------
[INFO] [stdout]   |                 |
[INFO] [stdout]   |                 `Deserialize` is not local
[INFO] [stdout]   |                 move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Config`
[INFO] [stdout] 7 | /// The global configuration
[INFO] [stdout] 8 | pub struct Config {
[INFO] [stdout]   |            ------ `Config` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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/config.rs:28:17
[INFO] [stdout]    |
[INFO] [stdout] 28 | #[derive(Clone, Deserialize)]
[INFO] [stdout]    |                 ^----------
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Deserialize` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_ServerConfig`
[INFO] [stdout] ...
[INFO] [stdout] 31 | pub struct ServerConfig {
[INFO] [stdout]    |            ------------ `ServerConfig` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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/config.rs:45:17
[INFO] [stdout]    |
[INFO] [stdout] 45 | #[derive(Clone, Deserialize)]
[INFO] [stdout]    |                 ^----------
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Deserialize` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_LogConfig`
[INFO] [stdout] ...
[INFO] [stdout] 48 | pub struct LogConfig {
[INFO] [stdout]    |            --------- `LogConfig` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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/config.rs:56:17
[INFO] [stdout]    |
[INFO] [stdout] 56 | #[derive(Clone, Deserialize)]
[INFO] [stdout]    |                 ^----------
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 `Deserialize` is not local
[INFO] [stdout]    |                 move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_PostgresConfig`
[INFO] [stdout] 57 | /// The database configuration
[INFO] [stdout] 58 | pub struct PostgresConfig {
[INFO] [stdout]    |            -------------- `PostgresConfig` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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/protocol/model.rs:9:28
[INFO] [stdout]    |
[INFO] [stdout] 9  | #[derive(Debug, PartialEq, Deserialize, Serialize)]
[INFO] [stdout]    |                            ^----------
[INFO] [stdout]    |                            |
[INFO] [stdout]    |                            `Deserialize` is not local
[INFO] [stdout]    |                            move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Session`
[INFO] [stdout] 10 | /// A session representation
[INFO] [stdout] 11 | pub struct Session {
[INFO] [stdout]    |            ------- `Session` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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/protocol/model.rs:9:41
[INFO] [stdout]    |
[INFO] [stdout] 9  | #[derive(Debug, PartialEq, Deserialize, Serialize)]
[INFO] [stdout]    |                                         ^--------
[INFO] [stdout]    |                                         |
[INFO] [stdout]    |                                         `Serialize` is not local
[INFO] [stdout]    |                                         move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Session`
[INFO] [stdout] 10 | /// A session representation
[INFO] [stdout] 11 | pub struct Session {
[INFO] [stdout]    |            ------- `Session` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` (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/protocol/request.rs:5:28
[INFO] [stdout]   |
[INFO] [stdout] 5 | #[derive(Debug, PartialEq, Deserialize, Serialize)]
[INFO] [stdout]   |                            ^----------
[INFO] [stdout]   |                            |
[INFO] [stdout]   |                            `Deserialize` is not local
[INFO] [stdout]   |                            move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_LoginCredentials`
[INFO] [stdout] 6 | /// The credentials based login request
[INFO] [stdout] 7 | pub struct LoginCredentials {
[INFO] [stdout]   |            ---------------- `LoginCredentials` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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/protocol/request.rs:5:41
[INFO] [stdout]   |
[INFO] [stdout] 5 | #[derive(Debug, PartialEq, Deserialize, Serialize)]
[INFO] [stdout]   |                                         ^--------
[INFO] [stdout]   |                                         |
[INFO] [stdout]   |                                         `Serialize` is not local
[INFO] [stdout]   |                                         move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_LoginCredentials`
[INFO] [stdout] 6 | /// The credentials based login request
[INFO] [stdout] 7 | pub struct LoginCredentials {
[INFO] [stdout]   |            ---------------- `LoginCredentials` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` (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/protocol/request.rs:15:28
[INFO] [stdout]    |
[INFO] [stdout] 15 | #[derive(Debug, PartialEq, Deserialize, Serialize)]
[INFO] [stdout]    |                            ^----------
[INFO] [stdout]    |                            |
[INFO] [stdout]    |                            `Deserialize` is not local
[INFO] [stdout]    |                            move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_LoginSession`
[INFO] [stdout] 16 | /// The session based login request
[INFO] [stdout] 17 | pub struct LoginSession(pub Session);
[INFO] [stdout]    |            ------------ `LoginSession` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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/protocol/request.rs:15:41
[INFO] [stdout]    |
[INFO] [stdout] 15 | #[derive(Debug, PartialEq, Deserialize, Serialize)]
[INFO] [stdout]    |                                         ^--------
[INFO] [stdout]    |                                         |
[INFO] [stdout]    |                                         `Serialize` is not local
[INFO] [stdout]    |                                         move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_LoginSession`
[INFO] [stdout] 16 | /// The session based login request
[INFO] [stdout] 17 | pub struct LoginSession(pub Session);
[INFO] [stdout]    |            ------------ `LoginSession` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` (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/protocol/request.rs:19:28
[INFO] [stdout]    |
[INFO] [stdout] 19 | #[derive(Debug, PartialEq, Deserialize, Serialize)]
[INFO] [stdout]    |                            ^----------
[INFO] [stdout]    |                            |
[INFO] [stdout]    |                            `Deserialize` is not local
[INFO] [stdout]    |                            move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Logout`
[INFO] [stdout] 20 | /// The logout request
[INFO] [stdout] 21 | pub struct Logout(pub Session);
[INFO] [stdout]    |            ------ `Logout` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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/protocol/request.rs:19:41
[INFO] [stdout]    |
[INFO] [stdout] 19 | #[derive(Debug, PartialEq, Deserialize, Serialize)]
[INFO] [stdout]    |                                         ^--------
[INFO] [stdout]    |                                         |
[INFO] [stdout]    |                                         `Serialize` is not local
[INFO] [stdout]    |                                         move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Logout`
[INFO] [stdout] 20 | /// The logout request
[INFO] [stdout] 21 | pub struct Logout(pub Session);
[INFO] [stdout]    |            ------ `Logout` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` (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/protocol/response.rs:5:28
[INFO] [stdout]   |
[INFO] [stdout] 5 | #[derive(Debug, PartialEq, Deserialize, Serialize)]
[INFO] [stdout]   |                            ^----------
[INFO] [stdout]   |                            |
[INFO] [stdout]   |                            `Deserialize` is not local
[INFO] [stdout]   |                            move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Login`
[INFO] [stdout] 6 | /// The login response
[INFO] [stdout] 7 | pub struct Login(pub Session);
[INFO] [stdout]   |            ----- `Login` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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/protocol/response.rs:5:41
[INFO] [stdout]   |
[INFO] [stdout] 5 | #[derive(Debug, PartialEq, Deserialize, Serialize)]
[INFO] [stdout]   |                                         ^--------
[INFO] [stdout]   |                                         |
[INFO] [stdout]   |                                         `Serialize` is not local
[INFO] [stdout]   |                                         move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Login`
[INFO] [stdout] 6 | /// The login response
[INFO] [stdout] 7 | pub struct Login(pub Session);
[INFO] [stdout]   |            ----- `Login` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` (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/protocol/response.rs:9:28
[INFO] [stdout]    |
[INFO] [stdout] 9  | #[derive(Debug, PartialEq, Deserialize, Serialize)]
[INFO] [stdout]    |                            ^----------
[INFO] [stdout]    |                            |
[INFO] [stdout]    |                            `Deserialize` is not local
[INFO] [stdout]    |                            move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Logout`
[INFO] [stdout] 10 | /// The logout response
[INFO] [stdout] 11 | pub struct Logout;
[INFO] [stdout]    |            ------ `Logout` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Deserialize` (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/protocol/response.rs:9:41
[INFO] [stdout]    |
[INFO] [stdout] 9  | #[derive(Debug, PartialEq, Deserialize, Serialize)]
[INFO] [stdout]    |                                         ^--------
[INFO] [stdout]    |                                         |
[INFO] [stdout]    |                                         `Serialize` is not local
[INFO] [stdout]    |                                         move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Logout`
[INFO] [stdout] 10 | /// The logout response
[INFO] [stdout] 11 | pub struct Logout;
[INFO] [stdout]    |            ------ `Logout` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_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 `Serialize` (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 0.73s
[INFO] running `Command { std: "docker" "inspect" "bfceb23dfd274b81904081cba8d39e14a1aa673f5b29916bc912d3d9c149eec4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "bfceb23dfd274b81904081cba8d39e14a1aa673f5b29916bc912d3d9c149eec4", kill_on_drop: false }`
[INFO] [stdout] bfceb23dfd274b81904081cba8d39e14a1aa673f5b29916bc912d3d9c149eec4
