[INFO] cloning repository https://github.com/Nugine/wrong-answer
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Nugine/wrong-answer" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FNugine%2Fwrong-answer", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FNugine%2Fwrong-answer'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] b1c5434337685d5e822b505d8aaf195f5e61cf37
[INFO] testing Nugine/wrong-answer against master#1871252fc8bb672d40787e67404e6eaae7059369 for pr-125151
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FNugine%2Fwrong-answer" "/workspace/builds/worker-5-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc1/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/Nugine/wrong-answer on toolchain 1871252fc8bb672d40787e67404e6eaae7059369
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1871252fc8bb672d40787e67404e6eaae7059369" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/Nugine/wrong-answer
[INFO] finished tweaking git repo https://github.com/Nugine/wrong-answer
[INFO] tweaked toml for git repo https://github.com/Nugine/wrong-answer written to /workspace/builds/worker-5-tc1/source/Cargo.toml
[INFO] crate git repo https://github.com/Nugine/wrong-answer 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" "+1871252fc8bb672d40787e67404e6eaae7059369" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded structopt v0.3.3
[INFO] [stderr]   Downloaded scheduled-thread-pool v0.2.2
[INFO] [stderr]   Downloaded r2d2 v0.8.5
[INFO] [stderr]   Downloaded ryu v1.0.1
[INFO] [stderr]   Downloaded thiserror-impl v1.0.2
[INFO] [stderr]   Downloaded thiserror v1.0.2
[INFO] [stderr]   Downloaded structopt-derive v0.3.3
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+1871252fc8bb672d40787e67404e6eaae7059369" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 437dfdbe6374d8619240415520b372973836124bbb7db8906f33c80ded259855
[INFO] running `Command { std: "docker" "start" "-a" "437dfdbe6374d8619240415520b372973836124bbb7db8906f33c80ded259855", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "437dfdbe6374d8619240415520b372973836124bbb7db8906f33c80ded259855", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "437dfdbe6374d8619240415520b372973836124bbb7db8906f33c80ded259855", kill_on_drop: false }`
[INFO] [stdout] 437dfdbe6374d8619240415520b372973836124bbb7db8906f33c80ded259855
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+1871252fc8bb672d40787e67404e6eaae7059369" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] d36cb0e72ae5e90b78a1feba4692c96fe4cef7b064e344a4971baca80e8942a7
[INFO] running `Command { std: "docker" "start" "-a" "d36cb0e72ae5e90b78a1feba4692c96fe4cef7b064e344a4971baca80e8942a7", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.65
[INFO] [stderr]    Compiling autocfg v0.1.6
[INFO] [stderr]    Compiling log v0.4.8
[INFO] [stderr]    Compiling maybe-uninit v2.0.0
[INFO] [stderr]    Compiling proc-macro2 v1.0.5
[INFO] [stderr]    Compiling syn v1.0.5
[INFO] [stderr]    Compiling rand_core v0.4.2
[INFO] [stderr]    Compiling memchr v2.2.1
[INFO] [stderr]    Compiling byteorder v1.3.2
[INFO] [stderr]    Compiling smallvec v0.6.14
[INFO] [stderr]    Compiling scopeguard v1.0.0
[INFO] [stderr]    Compiling parking_lot_core v0.6.2
[INFO] [stderr]    Compiling rand_core v0.3.1
[INFO] [stderr]    Compiling parking_lot v0.9.0
[INFO] [stderr]    Compiling futures v0.1.29
[INFO] [stderr]    Compiling lock_api v0.3.1
[INFO] [stderr]    Compiling unicode-segmentation v1.3.0
[INFO] [stderr]    Compiling unicode-width v0.1.6
[INFO] [stderr]    Compiling aho-corasick v0.7.6
[INFO] [stderr]    Compiling iovec v0.1.4
[INFO] [stderr]    Compiling quote v1.0.2
[INFO] [stderr]    Compiling atty v0.2.13
[INFO] [stderr]    Compiling bytes v0.4.12
[INFO] [stderr]    Compiling textwrap v0.11.0
[INFO] [stderr]    Compiling heck v0.3.1
[INFO] [stderr]    Compiling net2 v0.2.38
[INFO] [stderr]    Compiling rand_chacha v0.1.1
[INFO] [stderr]    Compiling rand_pcg v0.1.2
[INFO] [stderr]    Compiling thread_local v0.3.6
[INFO] [stderr]    Compiling regex-syntax v0.6.12
[INFO] [stderr]    Compiling vec_map v0.8.1
[INFO] [stderr]    Compiling strsim v0.8.0
[INFO] [stderr]    Compiling ansi_term v0.11.0
[INFO] [stderr]    Compiling quick-error v1.2.2
[INFO] [stderr]    Compiling mio v0.6.19
[INFO] [stderr]    Compiling humantime v1.3.0
[INFO] [stderr]    Compiling clap v2.33.0
[INFO] [stderr]    Compiling tokio-io v0.1.12
[INFO] [stderr]    Compiling rand v0.6.5
[INFO] [stderr]    Compiling crossbeam-utils v0.6.6
[INFO] [stderr]    Compiling termcolor v1.0.5
[INFO] [stderr]    Compiling itoa v0.4.4
[INFO] [stderr]    Compiling ryu v1.0.1
[INFO] [stderr]    Compiling serde v1.0.101
[INFO] [stderr]    Compiling tokio-executor v0.1.8
[INFO] [stderr]    Compiling tokio-sync v0.1.7
[INFO] [stderr]    Compiling num_cpus v1.10.1
[INFO] [stderr]    Compiling rand_os v0.1.3
[INFO] [stderr]    Compiling rand_isaac v0.1.1
[INFO] [stderr]    Compiling rand_hc v0.1.0
[INFO] [stderr]    Compiling regex v1.3.1
[INFO] [stderr]    Compiling rand_xorshift v0.1.1
[INFO] [stderr]    Compiling num-traits v0.2.8
[INFO] [stderr]    Compiling rand_jitter v0.1.4
[INFO] [stderr]    Compiling parking_lot_core v0.5.0
[INFO] [stderr]    Compiling proc-macro-error v0.2.6
[INFO] [stderr]    Compiling tokio-reactor v0.1.10
[INFO] [stderr]    Compiling unicode-normalization v0.1.8
[INFO] [stderr]    Compiling parking_lot v0.8.0
[INFO] [stderr]    Compiling crossbeam-utils v0.7.2
[INFO] [stderr]    Compiling unreachable v1.0.0
[INFO] [stderr]    Compiling env_logger v0.7.1
[INFO] [stderr]    Compiling mio-uds v0.6.7
[INFO] [stderr]    Compiling idna v0.2.0
[INFO] [stderr]    Compiling tokio-codec v0.1.1
[INFO] [stderr]    Compiling lock_api v0.2.0
[INFO] [stderr]    Compiling either v1.5.3
[INFO] [stderr]    Compiling ascii v0.9.3
[INFO] [stderr]    Compiling percent-encoding v2.1.0
[INFO] [stderr]    Compiling tokio-uds v0.2.5
[INFO] [stderr]    Compiling combine v3.8.1
[INFO] [stderr]    Compiling url v2.1.0
[INFO] [stderr]    Compiling structopt-derive v0.3.3
[INFO] [stderr]    Compiling serde_derive v1.0.101
[INFO] [stderr]    Compiling thiserror-impl v1.0.2
[INFO] [stderr]    Compiling num-derive v0.3.0
[INFO] [stderr]    Compiling thiserror v1.0.2
[INFO] [stderr]    Compiling tokio-tcp v0.1.3
[INFO] [stderr]    Compiling scheduled-thread-pool v0.2.2
[INFO] [stderr]    Compiling sha1 v0.6.0
[INFO] [stderr]    Compiling dtoa v0.4.4
[INFO] [stderr]    Compiling r2d2 v0.8.5
[INFO] [stderr]    Compiling crossbeam-channel v0.4.4
[INFO] [stderr]    Compiling structopt v0.3.3
[INFO] [stderr]    Compiling wa-compare v0.1.0 (/opt/rustwide/workdir/wa-compare)
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]   --> wa-compare/src/main.rs:56:32
[INFO] [stdout]    |
[INFO] [stdout] 56 |                 None => panic!(e),
[INFO] [stdout]    |                                ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]    = note: `#[warn(non_fmt_panics)]` on by default
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]    |
[INFO] [stdout] 56 |                 None => panic!("{}", e),
[INFO] [stdout]    |                                +++++
[INFO] [stdout] help: or use std::panic::panic_any instead
[INFO] [stdout]    |
[INFO] [stdout] 56 |                 None => std::panic::panic_any(e),
[INFO] [stdout]    |                         ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling redis v0.13.0
[INFO] [stdout] warning: 1 warning emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling r2d2_redis v0.12.0
[INFO] [stderr]    Compiling serde_json v1.0.41
[INFO] [stderr]    Compiling wa-monitor v0.1.0 (/opt/rustwide/workdir/wa-monitor)
[INFO] [stdout] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]  --> wa-monitor/src/types.rs:6:24
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[derive(Debug, Error, FromPrimitive, ToPrimitive)]
[INFO] [stdout]   |                        ^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: move this `impl` block outside the of the current constant `_IMPL_NUM_FromPrimitive_FOR_MonitorErrorKind`
[INFO] [stdout]   = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]   = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]   = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stdout]   = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stdout]   = note: this warning originates in the derive macro `FromPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]  --> wa-monitor/src/types.rs:6:39
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[derive(Debug, Error, FromPrimitive, ToPrimitive)]
[INFO] [stdout]   |                                       ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: move this `impl` block outside the of the current constant `_IMPL_NUM_ToPrimitive_FOR_MonitorErrorKind`
[INFO] [stdout]   = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]   = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]   = note: the derive macro `ToPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stdout]   = note: this warning originates in the derive macro `ToPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]   --> wa-monitor/src/types.rs:32:17
[INFO] [stdout]    |
[INFO] [stdout] 32 | #[derive(Debug, Serialize, Deserialize)]
[INFO] [stdout]    |                 ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_SERIALIZE_FOR_TargetStatus`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: 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: 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, they should be avoided as they go against expectation
[INFO] [stdout]   --> wa-monitor/src/types.rs:32:28
[INFO] [stdout]    |
[INFO] [stdout] 32 | #[derive(Debug, Serialize, Deserialize)]
[INFO] [stdout]    |                            ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_TargetStatus`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: 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: 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: 4 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling wa-server v0.1.0 (/opt/rustwide/workdir/wa-server)
[INFO] [stderr]    Compiling wa-interact v0.1.0 (/opt/rustwide/workdir/wa-interact)
[INFO] [stdout] warning: use of deprecated function `utils::compare::compare`
[INFO] [stdout]  --> wa-server/src/threads/worker.rs:3:20
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::utils::{compare, mkfifo};
[INFO] [stdout]   |                    ^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `utils::compare::compare`
[INFO] [stdout]    --> wa-server/src/threads/worker.rs:233:23
[INFO] [stdout]     |
[INFO] [stdout] 233 |             let cmp = compare(ignore_trailing_space, &task.stdout_path, &task.userout_path)?;
[INFO] [stdout]     |                       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `utils::compare::compare`
[INFO] [stdout]  --> wa-server/src/utils/mod.rs:4:18
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub use compare::compare;
[INFO] [stdout]   |                  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> wa-server/src/types/mod.rs:46:13
[INFO] [stdout]    |
[INFO] [stdout] 46 |     Channel(&'static str),
[INFO] [stdout]    |     ------- ^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 46 |     Channel(()),
[INFO] [stdout]    |             ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]  --> wa-server/src/config.rs:6:10
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[derive(Deserialize)]
[INFO] [stdout]   |          ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_RedisConfig`
[INFO] [stdout]   = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]   = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]   = note: 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: `#[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, they should be avoided as they go against expectation
[INFO] [stdout]   --> wa-server/src/config.rs:19:10
[INFO] [stdout]    |
[INFO] [stdout] 19 | #[derive(Deserialize)]
[INFO] [stdout]    |          ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_Config`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: 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: 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: panic message is not a string literal
[INFO] [stdout]   --> wa-server/src/main.rs:17:24
[INFO] [stdout]    |
[INFO] [stdout] 17 |                 panic!(e)
[INFO] [stdout]    |                        ^
[INFO] [stdout]    |
[INFO] [stdout]   ::: wa-server/src/threads/listener.rs:17:13
[INFO] [stdout]    |
[INFO] [stdout] 17 |             handle!(self.redis.reload(), "redis error: {}");
[INFO] [stdout]    |             ----------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]    = note: `#[warn(non_fmt_panics)]` on by default
[INFO] [stdout]    = note: this warning originates in the macro `handle` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]    |
[INFO] [stdout] 17 |                 panic!("{}", e)
[INFO] [stdout]    |                        +++++
[INFO] [stdout] help: or use std::panic::panic_any instead
[INFO] [stdout]    |
[INFO] [stdout] 17 |                 std::panic::panic_any(e)
[INFO] [stdout]    |                 ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]   --> wa-server/src/main.rs:17:24
[INFO] [stdout]    |
[INFO] [stdout] 17 |                 panic!(e)
[INFO] [stdout]    |                        ^
[INFO] [stdout]    |
[INFO] [stdout]   ::: wa-server/src/threads/listener.rs:22:34
[INFO] [stdout]    |
[INFO] [stdout] 22 |                 let submission = handle!(self.redis.get_submission(), "redis error: {}");
[INFO] [stdout]    |                                  ------------------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]    = note: this warning originates in the macro `handle` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]    |
[INFO] [stdout] 17 |                 panic!("{}", e)
[INFO] [stdout]    |                        +++++
[INFO] [stdout] help: or use std::panic::panic_any instead
[INFO] [stdout]    |
[INFO] [stdout] 17 |                 std::panic::panic_any(e)
[INFO] [stdout]    |                 ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]   --> wa-server/src/main.rs:17:24
[INFO] [stdout]    |
[INFO] [stdout] 17 |                   panic!(e)
[INFO] [stdout]    |                          ^
[INFO] [stdout]    |
[INFO] [stdout]   ::: wa-server/src/threads/listener.rs:26:17
[INFO] [stdout]    |
[INFO] [stdout] 26 | /                 handle!(
[INFO] [stdout] 27 | |                     self.sync_data(submission.problem_id),
[INFO] [stdout] 28 | |                     "fail to sync data: {}"
[INFO] [stdout] 29 | |                 );
[INFO] [stdout]    | |_________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]    = note: this warning originates in the macro `handle` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]    |
[INFO] [stdout] 17 |                 panic!("{}", e)
[INFO] [stdout]    |                        +++++
[INFO] [stdout] help: or use std::panic::panic_any instead
[INFO] [stdout]    |
[INFO] [stdout] 17 |                 std::panic::panic_any(e)
[INFO] [stdout]    |                 ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]   --> wa-server/src/main.rs:17:24
[INFO] [stdout]    |
[INFO] [stdout] 17 |                   panic!(e)
[INFO] [stdout]    |                          ^
[INFO] [stdout]    |
[INFO] [stdout]   ::: wa-server/src/threads/listener.rs:31:17
[INFO] [stdout]    |
[INFO] [stdout] 31 | /                 handle!(
[INFO] [stdout] 32 | |                     self.update_sender
[INFO] [stdout] 33 | |                         .send(submission.update(JudgeStatus::Queuing)),
[INFO] [stdout] 34 | |                     "updater is disconnected: {}"
[INFO] [stdout] 35 | |                 );
[INFO] [stdout]    | |_________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]    = note: this warning originates in the macro `handle` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]    |
[INFO] [stdout] 17 |                 panic!("{}", e)
[INFO] [stdout]    |                        +++++
[INFO] [stdout] help: or use std::panic::panic_any instead
[INFO] [stdout]    |
[INFO] [stdout] 17 |                 std::panic::panic_any(e)
[INFO] [stdout]    |                 ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]   --> wa-server/src/main.rs:17:24
[INFO] [stdout]    |
[INFO] [stdout] 17 |                   panic!(e)
[INFO] [stdout]    |                          ^
[INFO] [stdout]    |
[INFO] [stdout]   ::: wa-server/src/threads/listener.rs:37:17
[INFO] [stdout]    |
[INFO] [stdout] 37 | /                 handle!(
[INFO] [stdout] 38 | |                     self.submission_sender.send(submission),
[INFO] [stdout] 39 | |                     "workers are disconnected: {}"
[INFO] [stdout] 40 | |                 );
[INFO] [stdout]    | |_________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]    = note: this warning originates in the macro `handle` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]    |
[INFO] [stdout] 17 |                 panic!("{}", e)
[INFO] [stdout]    |                        +++++
[INFO] [stdout] help: or use std::panic::panic_any instead
[INFO] [stdout]    |
[INFO] [stdout] 17 |                 std::panic::panic_any(e)
[INFO] [stdout]    |                 ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]   --> wa-server/src/main.rs:17:24
[INFO] [stdout]    |
[INFO] [stdout] 17 |                   panic!(e)
[INFO] [stdout]    |                          ^
[INFO] [stdout]    |
[INFO] [stdout]   ::: wa-server/src/threads/updater.rs:13:26
[INFO] [stdout]    |
[INFO] [stdout] 13 |               let update = handle!(
[INFO] [stdout]    |  __________________________-
[INFO] [stdout] 14 | |                 self.update_receiver.recv(),
[INFO] [stdout] 15 | |                 "update senders are disconnected: {}"
[INFO] [stdout] 16 | |             );
[INFO] [stdout]    | |_____________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]    = note: this warning originates in the macro `handle` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]    |
[INFO] [stdout] 17 |                 panic!("{}", e)
[INFO] [stdout]    |                        +++++
[INFO] [stdout] help: or use std::panic::panic_any instead
[INFO] [stdout]    |
[INFO] [stdout] 17 |                 std::panic::panic_any(e)
[INFO] [stdout]    |                 ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]   --> wa-server/src/main.rs:17:24
[INFO] [stdout]    |
[INFO] [stdout] 17 |                 panic!(e)
[INFO] [stdout]    |                        ^
[INFO] [stdout]    |
[INFO] [stdout]   ::: wa-server/src/threads/updater.rs:24:13
[INFO] [stdout]    |
[INFO] [stdout] 24 |             handle!(self.redis.update_submission(update), "redis error: {}");
[INFO] [stdout]    |             ---------------------------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]    = note: this warning originates in the macro `handle` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]    |
[INFO] [stdout] 17 |                 panic!("{}", e)
[INFO] [stdout]    |                        +++++
[INFO] [stdout] help: or use std::panic::panic_any instead
[INFO] [stdout]    |
[INFO] [stdout] 17 |                 std::panic::panic_any(e)
[INFO] [stdout]    |                 ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]   --> wa-server/src/main.rs:17:24
[INFO] [stdout]    |
[INFO] [stdout] 17 |                   panic!(e)
[INFO] [stdout]    |                          ^
[INFO] [stdout]    |
[INFO] [stdout]   ::: wa-server/src/threads/worker.rs:29:30
[INFO] [stdout]    |
[INFO] [stdout] 29 |               let submission = handle!(
[INFO] [stdout]    |  ______________________________-
[INFO] [stdout] 30 | |                 self.submission_receiver.recv(),
[INFO] [stdout] 31 | |                 "submission sender is disconnected: {}"
[INFO] [stdout] 32 | |             );
[INFO] [stdout]    | |_____________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]    = note: this warning originates in the macro `handle` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]    |
[INFO] [stdout] 17 |                 panic!("{}", e)
[INFO] [stdout]    |                        +++++
[INFO] [stdout] help: or use std::panic::panic_any instead
[INFO] [stdout]    |
[INFO] [stdout] 17 |                 std::panic::panic_any(e)
[INFO] [stdout]    |                 ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]   --> wa-server/src/main.rs:26:24
[INFO] [stdout]    |
[INFO] [stdout] 26 |                   panic!(e)
[INFO] [stdout]    |                          ^
[INFO] [stdout]    |
[INFO] [stdout]   ::: wa-server/src/threads/worker.rs:37:13
[INFO] [stdout]    |
[INFO] [stdout] 37 | /             handle!(@custom
[INFO] [stdout] 38 | |                 std::fs::create_dir_all(&working_dir),
[INFO] [stdout] 39 | |                 "can not create dir: {:?}",
[INFO] [stdout] 40 | |                 &working_dir,
[INFO] [stdout] 41 | |             );
[INFO] [stdout]    | |_____________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]    = note: this warning originates in the macro `handle` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]    |
[INFO] [stdout] 26 |                 panic!("{}", e)
[INFO] [stdout]    |                        +++++
[INFO] [stdout] help: or use std::panic::panic_any instead
[INFO] [stdout]    |
[INFO] [stdout] 26 |                 std::panic::panic_any(e)
[INFO] [stdout]    |                 ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]   --> wa-server/src/main.rs:26:24
[INFO] [stdout]    |
[INFO] [stdout] 26 |                   panic!(e)
[INFO] [stdout]    |                          ^
[INFO] [stdout]    |
[INFO] [stdout]   ::: wa-server/src/threads/worker.rs:63:17
[INFO] [stdout]    |
[INFO] [stdout] 63 | /                 handle!(@custom
[INFO] [stdout] 64 | |                     std::fs::remove_dir_all(&working_dir),
[INFO] [stdout] 65 | |                     "can not remove dir: {:?}",
[INFO] [stdout] 66 | |                     &working_dir,
[INFO] [stdout] 67 | |                 );
[INFO] [stdout]    | |_________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]    = note: this warning originates in the macro `handle` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]    |
[INFO] [stdout] 26 |                 panic!("{}", e)
[INFO] [stdout]    |                        +++++
[INFO] [stdout] help: or use std::panic::panic_any instead
[INFO] [stdout]    |
[INFO] [stdout] 26 |                 std::panic::panic_any(e)
[INFO] [stdout]    |                 ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> wa-server/src/main.rs:17:24
[INFO] [stdout]     |
[INFO] [stdout] 17  |                   panic!(e)
[INFO] [stdout]     |                          ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: wa-server/src/threads/worker.rs:245:9
[INFO] [stdout]     |
[INFO] [stdout] 245 | /         handle!(
[INFO] [stdout] 246 | |             self.update_sender.send(update),
[INFO] [stdout] 247 | |             "updater is disconnected: {}"
[INFO] [stdout] 248 | |         );
[INFO] [stdout]     | |_________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: this warning originates in the macro `handle` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]     |
[INFO] [stdout] 17  |                 panic!("{}", e)
[INFO] [stdout]     |                        +++++
[INFO] [stdout] help: or use std::panic::panic_any instead
[INFO] [stdout]     |
[INFO] [stdout] 17  |                 std::panic::panic_any(e)
[INFO] [stdout]     |                 ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]  --> wa-server/src/types/judge.rs:3:45
[INFO] [stdout]   |
[INFO] [stdout] 3 | #[derive(Debug, Clone, Copy, PartialEq, Eq, Serialize, Deserialize)]
[INFO] [stdout]   |                                             ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: move this `impl` block outside the of the current constant `_IMPL_SERIALIZE_FOR_JudgeType`
[INFO] [stdout]   = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]   = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]   = note: 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: 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, they should be avoided as they go against expectation
[INFO] [stdout]  --> wa-server/src/types/judge.rs:3:56
[INFO] [stdout]   |
[INFO] [stdout] 3 | #[derive(Debug, Clone, Copy, PartialEq, Eq, Serialize, Deserialize)]
[INFO] [stdout]   |                                                        ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_JudgeType`
[INFO] [stdout]   = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]   = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]   = note: 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: 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, they should be avoided as they go against expectation
[INFO] [stdout]   --> wa-server/src/types/judge.rs:11:10
[INFO] [stdout]    |
[INFO] [stdout] 11 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_SERIALIZE_FOR_Submission`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: 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: 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, they should be avoided as they go against expectation
[INFO] [stdout]   --> wa-server/src/types/judge.rs:11:21
[INFO] [stdout]    |
[INFO] [stdout] 11 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |                     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_Submission`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: 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: 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, they should be avoided as they go against expectation
[INFO] [stdout]   --> wa-server/src/types/judge.rs:23:45
[INFO] [stdout]    |
[INFO] [stdout] 23 | #[derive(Debug, Clone, Copy, PartialEq, Eq, Serialize, Deserialize)]
[INFO] [stdout]    |                                             ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_SERIALIZE_FOR_JudgeStatus`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: 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: 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, they should be avoided as they go against expectation
[INFO] [stdout]   --> wa-server/src/types/judge.rs:23:56
[INFO] [stdout]    |
[INFO] [stdout] 23 | #[derive(Debug, Clone, Copy, PartialEq, Eq, Serialize, Deserialize)]
[INFO] [stdout]    |                                                        ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_JudgeStatus`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: 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: 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, they should be avoided as they go against expectation
[INFO] [stdout]   --> wa-server/src/types/judge.rs:42:10
[INFO] [stdout]    |
[INFO] [stdout] 42 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_SERIALIZE_FOR_JudgeCaseResult`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: 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: 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, they should be avoided as they go against expectation
[INFO] [stdout]   --> wa-server/src/types/judge.rs:42:21
[INFO] [stdout]    |
[INFO] [stdout] 42 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |                     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_JudgeCaseResult`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: 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: 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, they should be avoided as they go against expectation
[INFO] [stdout]   --> wa-server/src/types/judge.rs:49:10
[INFO] [stdout]    |
[INFO] [stdout] 49 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_SERIALIZE_FOR_JudgeResult`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: 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: 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, they should be avoided as they go against expectation
[INFO] [stdout]   --> wa-server/src/types/judge.rs:49:21
[INFO] [stdout]    |
[INFO] [stdout] 49 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |                     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_JudgeResult`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: 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: 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, they should be avoided as they go against expectation
[INFO] [stdout]   --> wa-server/src/types/judge.rs:57:10
[INFO] [stdout]    |
[INFO] [stdout] 57 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_SERIALIZE_FOR_Update`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: 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: 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, they should be avoided as they go against expectation
[INFO] [stdout]   --> wa-server/src/types/judge.rs:57:21
[INFO] [stdout]    |
[INFO] [stdout] 57 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |                     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_Update`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: 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: 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, they should be avoided as they go against expectation
[INFO] [stdout]  --> wa-server/src/types/lang.rs:3:51
[INFO] [stdout]   |
[INFO] [stdout] 3 | #[derive(Debug, Clone, Copy, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stdout]   |                                                   ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: move this `impl` block outside the of the current constant `_IMPL_SERIALIZE_FOR_Language`
[INFO] [stdout]   = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]   = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]   = note: 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: 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, they should be avoided as they go against expectation
[INFO] [stdout]  --> wa-server/src/types/lang.rs:3:62
[INFO] [stdout]   |
[INFO] [stdout] 3 | #[derive(Debug, Clone, Copy, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stdout]   |                                                              ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_Language`
[INFO] [stdout]   = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]   = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]   = note: 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: 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, they should be avoided as they go against expectation
[INFO] [stdout]   --> wa-server/src/types/sandbox.rs:14:10
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive(Deserialize)]
[INFO] [stdout]    |          ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_Limit`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: 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: 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: 32 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 21.68s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: redis v0.13.0
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 1`
[INFO] running `Command { std: "docker" "inspect" "d36cb0e72ae5e90b78a1feba4692c96fe4cef7b064e344a4971baca80e8942a7", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d36cb0e72ae5e90b78a1feba4692c96fe4cef7b064e344a4971baca80e8942a7", kill_on_drop: false }`
[INFO] [stdout] d36cb0e72ae5e90b78a1feba4692c96fe4cef7b064e344a4971baca80e8942a7
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+1871252fc8bb672d40787e67404e6eaae7059369" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] b0fdd061a65d6c6b0293a63539c80e190b2e6f5d608c7835c619ee1f449ddaab
[INFO] running `Command { std: "docker" "start" "-a" "b0fdd061a65d6c6b0293a63539c80e190b2e6f5d608c7835c619ee1f449ddaab", kill_on_drop: false }`
[INFO] [stdout] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]  --> wa-monitor/src/types.rs:6:24
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[derive(Debug, Error, FromPrimitive, ToPrimitive)]
[INFO] [stdout]   |                        ^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: move this `impl` block outside the of the current constant `_IMPL_NUM_FromPrimitive_FOR_MonitorErrorKind`
[INFO] [stdout]   = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]   = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]   = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stdout]   = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stdout]   = note: this warning originates in the derive macro `FromPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]  --> wa-monitor/src/types.rs:6:39
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[derive(Debug, Error, FromPrimitive, ToPrimitive)]
[INFO] [stdout]   |                                       ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: move this `impl` block outside the of the current constant `_IMPL_NUM_ToPrimitive_FOR_MonitorErrorKind`
[INFO] [stdout]   = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]   = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]   = note: the derive macro `ToPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stdout]   = note: this warning originates in the derive macro `ToPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]   --> wa-monitor/src/types.rs:32:17
[INFO] [stdout]    |
[INFO] [stdout] 32 | #[derive(Debug, Serialize, Deserialize)]
[INFO] [stdout]    |                 ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_SERIALIZE_FOR_TargetStatus`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: 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: 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, they should be avoided as they go against expectation
[INFO] [stdout]   --> wa-monitor/src/types.rs:32:28
[INFO] [stdout]    |
[INFO] [stdout] 32 | #[derive(Debug, Serialize, Deserialize)]
[INFO] [stdout]    |                            ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_TargetStatus`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: 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: 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: 4 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling wa-compare v0.1.0 (/opt/rustwide/workdir/wa-compare)
[INFO] [stderr]    Compiling wa-monitor v0.1.0 (/opt/rustwide/workdir/wa-monitor)
[INFO] [stderr]    Compiling wa-interact v0.1.0 (/opt/rustwide/workdir/wa-interact)
[INFO] [stderr]    Compiling wa-server v0.1.0 (/opt/rustwide/workdir/wa-server)
[INFO] [stdout] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]  --> wa-monitor/src/types.rs:6:24
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[derive(Debug, Error, FromPrimitive, ToPrimitive)]
[INFO] [stdout]   |                        ^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: move this `impl` block outside the of the current constant `_IMPL_NUM_FromPrimitive_FOR_MonitorErrorKind`
[INFO] [stdout]   = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]   = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]   = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stdout]   = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stdout]   = note: this warning originates in the derive macro `FromPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]  --> wa-monitor/src/types.rs:6:39
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[derive(Debug, Error, FromPrimitive, ToPrimitive)]
[INFO] [stdout]   |                                       ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: move this `impl` block outside the of the current constant `_IMPL_NUM_ToPrimitive_FOR_MonitorErrorKind`
[INFO] [stdout]   = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]   = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]   = note: the derive macro `ToPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stdout]   = note: this warning originates in the derive macro `ToPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]   --> wa-monitor/src/types.rs:32:17
[INFO] [stdout]    |
[INFO] [stdout] 32 | #[derive(Debug, Serialize, Deserialize)]
[INFO] [stdout]    |                 ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_SERIALIZE_FOR_TargetStatus`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: 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: 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, they should be avoided as they go against expectation
[INFO] [stdout]   --> wa-monitor/src/types.rs:32:28
[INFO] [stdout]    |
[INFO] [stdout] 32 | #[derive(Debug, Serialize, Deserialize)]
[INFO] [stdout]    |                            ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_TargetStatus`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: 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: 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: panic message is not a string literal
[INFO] [stdout]   --> wa-compare/src/main.rs:56:32
[INFO] [stdout]    |
[INFO] [stdout] 56 |                 None => panic!(e),
[INFO] [stdout]    |                                ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]    = note: `#[warn(non_fmt_panics)]` on by default
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]    |
[INFO] [stdout] 56 |                 None => panic!("{}", e),
[INFO] [stdout]    |                                +++++
[INFO] [stdout] help: or use std::panic::panic_any instead
[INFO] [stdout]    |
[INFO] [stdout] 56 |                 None => std::panic::panic_any(e),
[INFO] [stdout]    |                         ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `utils::compare::compare`
[INFO] [stdout]  --> wa-server/src/threads/worker.rs:3:20
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::utils::{compare, mkfifo};
[INFO] [stdout]   |                    ^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `utils::compare::compare`
[INFO] [stdout]    --> wa-server/src/threads/worker.rs:233:23
[INFO] [stdout]     |
[INFO] [stdout] 233 |             let cmp = compare(ignore_trailing_space, &task.stdout_path, &task.userout_path)?;
[INFO] [stdout]     |                       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `utils::compare::compare`
[INFO] [stdout]  --> wa-server/src/utils/mod.rs:4:18
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub use compare::compare;
[INFO] [stdout]   |                  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 4 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 1 warning emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> wa-server/src/types/mod.rs:46:13
[INFO] [stdout]    |
[INFO] [stdout] 46 |     Channel(&'static str),
[INFO] [stdout]    |     ------- ^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 46 |     Channel(()),
[INFO] [stdout]    |             ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]  --> wa-server/src/config.rs:6:10
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[derive(Deserialize)]
[INFO] [stdout]   |          ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_RedisConfig`
[INFO] [stdout]   = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]   = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]   = note: 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: `#[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, they should be avoided as they go against expectation
[INFO] [stdout]   --> wa-server/src/config.rs:19:10
[INFO] [stdout]    |
[INFO] [stdout] 19 | #[derive(Deserialize)]
[INFO] [stdout]    |          ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_Config`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: 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: 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: panic message is not a string literal
[INFO] [stdout]   --> wa-server/src/main.rs:17:24
[INFO] [stdout]    |
[INFO] [stdout] 17 |                 panic!(e)
[INFO] [stdout]    |                        ^
[INFO] [stdout]    |
[INFO] [stdout]   ::: wa-server/src/threads/listener.rs:17:13
[INFO] [stdout]    |
[INFO] [stdout] 17 |             handle!(self.redis.reload(), "redis error: {}");
[INFO] [stdout]    |             ----------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]    = note: `#[warn(non_fmt_panics)]` on by default
[INFO] [stdout]    = note: this warning originates in the macro `handle` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]    |
[INFO] [stdout] 17 |                 panic!("{}", e)
[INFO] [stdout]    |                        +++++
[INFO] [stdout] help: or use std::panic::panic_any instead
[INFO] [stdout]    |
[INFO] [stdout] 17 |                 std::panic::panic_any(e)
[INFO] [stdout]    |                 ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]   --> wa-server/src/main.rs:17:24
[INFO] [stdout]    |
[INFO] [stdout] 17 |                 panic!(e)
[INFO] [stdout]    |                        ^
[INFO] [stdout]    |
[INFO] [stdout]   ::: wa-server/src/threads/listener.rs:22:34
[INFO] [stdout]    |
[INFO] [stdout] 22 |                 let submission = handle!(self.redis.get_submission(), "redis error: {}");
[INFO] [stdout]    |                                  ------------------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]    = note: this warning originates in the macro `handle` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]    |
[INFO] [stdout] 17 |                 panic!("{}", e)
[INFO] [stdout]    |                        +++++
[INFO] [stdout] help: or use std::panic::panic_any instead
[INFO] [stdout]    |
[INFO] [stdout] 17 |                 std::panic::panic_any(e)
[INFO] [stdout]    |                 ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]   --> wa-server/src/main.rs:17:24
[INFO] [stdout]    |
[INFO] [stdout] 17 |                   panic!(e)
[INFO] [stdout]    |                          ^
[INFO] [stdout]    |
[INFO] [stdout]   ::: wa-server/src/threads/listener.rs:26:17
[INFO] [stdout]    |
[INFO] [stdout] 26 | /                 handle!(
[INFO] [stdout] 27 | |                     self.sync_data(submission.problem_id),
[INFO] [stdout] 28 | |                     "fail to sync data: {}"
[INFO] [stdout] 29 | |                 );
[INFO] [stdout]    | |_________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]    = note: this warning originates in the macro `handle` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]    |
[INFO] [stdout] 17 |                 panic!("{}", e)
[INFO] [stdout]    |                        +++++
[INFO] [stdout] help: or use std::panic::panic_any instead
[INFO] [stdout]    |
[INFO] [stdout] 17 |                 std::panic::panic_any(e)
[INFO] [stdout]    |                 ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]   --> wa-server/src/main.rs:17:24
[INFO] [stdout]    |
[INFO] [stdout] 17 |                   panic!(e)
[INFO] [stdout]    |                          ^
[INFO] [stdout]    |
[INFO] [stdout]   ::: wa-server/src/threads/listener.rs:31:17
[INFO] [stdout]    |
[INFO] [stdout] 31 | /                 handle!(
[INFO] [stdout] 32 | |                     self.update_sender
[INFO] [stdout] 33 | |                         .send(submission.update(JudgeStatus::Queuing)),
[INFO] [stdout] 34 | |                     "updater is disconnected: {}"
[INFO] [stdout] 35 | |                 );
[INFO] [stdout]    | |_________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]    = note: this warning originates in the macro `handle` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]    |
[INFO] [stdout] 17 |                 panic!("{}", e)
[INFO] [stdout]    |                        +++++
[INFO] [stdout] help: or use std::panic::panic_any instead
[INFO] [stdout]    |
[INFO] [stdout] 17 |                 std::panic::panic_any(e)
[INFO] [stdout]    |                 ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]   --> wa-server/src/main.rs:17:24
[INFO] [stdout]    |
[INFO] [stdout] 17 |                   panic!(e)
[INFO] [stdout]    |                          ^
[INFO] [stdout]    |
[INFO] [stdout]   ::: wa-server/src/threads/listener.rs:37:17
[INFO] [stdout]    |
[INFO] [stdout] 37 | /                 handle!(
[INFO] [stdout] 38 | |                     self.submission_sender.send(submission),
[INFO] [stdout] 39 | |                     "workers are disconnected: {}"
[INFO] [stdout] 40 | |                 );
[INFO] [stdout]    | |_________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]    = note: this warning originates in the macro `handle` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]    |
[INFO] [stdout] 17 |                 panic!("{}", e)
[INFO] [stdout]    |                        +++++
[INFO] [stdout] help: or use std::panic::panic_any instead
[INFO] [stdout]    |
[INFO] [stdout] 17 |                 std::panic::panic_any(e)
[INFO] [stdout]    |                 ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]   --> wa-server/src/main.rs:17:24
[INFO] [stdout]    |
[INFO] [stdout] 17 |                   panic!(e)
[INFO] [stdout]    |                          ^
[INFO] [stdout]    |
[INFO] [stdout]   ::: wa-server/src/threads/updater.rs:13:26
[INFO] [stdout]    |
[INFO] [stdout] 13 |               let update = handle!(
[INFO] [stdout]    |  __________________________-
[INFO] [stdout] 14 | |                 self.update_receiver.recv(),
[INFO] [stdout] 15 | |                 "update senders are disconnected: {}"
[INFO] [stdout] 16 | |             );
[INFO] [stdout]    | |_____________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]    = note: this warning originates in the macro `handle` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]    |
[INFO] [stdout] 17 |                 panic!("{}", e)
[INFO] [stdout]    |                        +++++
[INFO] [stdout] help: or use std::panic::panic_any instead
[INFO] [stdout]    |
[INFO] [stdout] 17 |                 std::panic::panic_any(e)
[INFO] [stdout]    |                 ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]   --> wa-server/src/main.rs:17:24
[INFO] [stdout]    |
[INFO] [stdout] 17 |                 panic!(e)
[INFO] [stdout]    |                        ^
[INFO] [stdout]    |
[INFO] [stdout]   ::: wa-server/src/threads/updater.rs:24:13
[INFO] [stdout]    |
[INFO] [stdout] 24 |             handle!(self.redis.update_submission(update), "redis error: {}");
[INFO] [stdout]    |             ---------------------------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]    = note: this warning originates in the macro `handle` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]    |
[INFO] [stdout] 17 |                 panic!("{}", e)
[INFO] [stdout]    |                        +++++
[INFO] [stdout] help: or use std::panic::panic_any instead
[INFO] [stdout]    |
[INFO] [stdout] 17 |                 std::panic::panic_any(e)
[INFO] [stdout]    |                 ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]   --> wa-server/src/main.rs:17:24
[INFO] [stdout]    |
[INFO] [stdout] 17 |                   panic!(e)
[INFO] [stdout]    |                          ^
[INFO] [stdout]    |
[INFO] [stdout]   ::: wa-server/src/threads/worker.rs:29:30
[INFO] [stdout]    |
[INFO] [stdout] 29 |               let submission = handle!(
[INFO] [stdout]    |  ______________________________-
[INFO] [stdout] 30 | |                 self.submission_receiver.recv(),
[INFO] [stdout] 31 | |                 "submission sender is disconnected: {}"
[INFO] [stdout] 32 | |             );
[INFO] [stdout]    | |_____________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]    = note: this warning originates in the macro `handle` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]    |
[INFO] [stdout] 17 |                 panic!("{}", e)
[INFO] [stdout]    |                        +++++
[INFO] [stdout] help: or use std::panic::panic_any instead
[INFO] [stdout]    |
[INFO] [stdout] 17 |                 std::panic::panic_any(e)
[INFO] [stdout]    |                 ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]   --> wa-server/src/main.rs:26:24
[INFO] [stdout]    |
[INFO] [stdout] 26 |                   panic!(e)
[INFO] [stdout]    |                          ^
[INFO] [stdout]    |
[INFO] [stdout]   ::: wa-server/src/threads/worker.rs:37:13
[INFO] [stdout]    |
[INFO] [stdout] 37 | /             handle!(@custom
[INFO] [stdout] 38 | |                 std::fs::create_dir_all(&working_dir),
[INFO] [stdout] 39 | |                 "can not create dir: {:?}",
[INFO] [stdout] 40 | |                 &working_dir,
[INFO] [stdout] 41 | |             );
[INFO] [stdout]    | |_____________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]    = note: this warning originates in the macro `handle` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]    |
[INFO] [stdout] 26 |                 panic!("{}", e)
[INFO] [stdout]    |                        +++++
[INFO] [stdout] help: or use std::panic::panic_any instead
[INFO] [stdout]    |
[INFO] [stdout] 26 |                 std::panic::panic_any(e)
[INFO] [stdout]    |                 ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]   --> wa-server/src/main.rs:26:24
[INFO] [stdout]    |
[INFO] [stdout] 26 |                   panic!(e)
[INFO] [stdout]    |                          ^
[INFO] [stdout]    |
[INFO] [stdout]   ::: wa-server/src/threads/worker.rs:63:17
[INFO] [stdout]    |
[INFO] [stdout] 63 | /                 handle!(@custom
[INFO] [stdout] 64 | |                     std::fs::remove_dir_all(&working_dir),
[INFO] [stdout] 65 | |                     "can not remove dir: {:?}",
[INFO] [stdout] 66 | |                     &working_dir,
[INFO] [stdout] 67 | |                 );
[INFO] [stdout]    | |_________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]    = note: this warning originates in the macro `handle` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]    |
[INFO] [stdout] 26 |                 panic!("{}", e)
[INFO] [stdout]    |                        +++++
[INFO] [stdout] help: or use std::panic::panic_any instead
[INFO] [stdout]    |
[INFO] [stdout] 26 |                 std::panic::panic_any(e)
[INFO] [stdout]    |                 ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> wa-server/src/main.rs:17:24
[INFO] [stdout]     |
[INFO] [stdout] 17  |                   panic!(e)
[INFO] [stdout]     |                          ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: wa-server/src/threads/worker.rs:245:9
[INFO] [stdout]     |
[INFO] [stdout] 245 | /         handle!(
[INFO] [stdout] 246 | |             self.update_sender.send(update),
[INFO] [stdout] 247 | |             "updater is disconnected: {}"
[INFO] [stdout] 248 | |         );
[INFO] [stdout]     | |_________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: this warning originates in the macro `handle` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]     |
[INFO] [stdout] 17  |                 panic!("{}", e)
[INFO] [stdout]     |                        +++++
[INFO] [stdout] help: or use std::panic::panic_any instead
[INFO] [stdout]     |
[INFO] [stdout] 17  |                 std::panic::panic_any(e)
[INFO] [stdout]     |                 ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]  --> wa-server/src/types/judge.rs:3:45
[INFO] [stdout]   |
[INFO] [stdout] 3 | #[derive(Debug, Clone, Copy, PartialEq, Eq, Serialize, Deserialize)]
[INFO] [stdout]   |                                             ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: move this `impl` block outside the of the current constant `_IMPL_SERIALIZE_FOR_JudgeType`
[INFO] [stdout]   = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]   = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]   = note: 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: 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, they should be avoided as they go against expectation
[INFO] [stdout]  --> wa-server/src/types/judge.rs:3:56
[INFO] [stdout]   |
[INFO] [stdout] 3 | #[derive(Debug, Clone, Copy, PartialEq, Eq, Serialize, Deserialize)]
[INFO] [stdout]   |                                                        ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_JudgeType`
[INFO] [stdout]   = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]   = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]   = note: 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: 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, they should be avoided as they go against expectation
[INFO] [stdout]   --> wa-server/src/types/judge.rs:11:10
[INFO] [stdout]    |
[INFO] [stdout] 11 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_SERIALIZE_FOR_Submission`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: 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: 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, they should be avoided as they go against expectation
[INFO] [stdout]   --> wa-server/src/types/judge.rs:11:21
[INFO] [stdout]    |
[INFO] [stdout] 11 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |                     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_Submission`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: 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: 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, they should be avoided as they go against expectation
[INFO] [stdout]   --> wa-server/src/types/judge.rs:23:45
[INFO] [stdout]    |
[INFO] [stdout] 23 | #[derive(Debug, Clone, Copy, PartialEq, Eq, Serialize, Deserialize)]
[INFO] [stdout]    |                                             ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_SERIALIZE_FOR_JudgeStatus`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: 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: 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, they should be avoided as they go against expectation
[INFO] [stdout]   --> wa-server/src/types/judge.rs:23:56
[INFO] [stdout]    |
[INFO] [stdout] 23 | #[derive(Debug, Clone, Copy, PartialEq, Eq, Serialize, Deserialize)]
[INFO] [stdout]    |                                                        ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_JudgeStatus`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: 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: 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, they should be avoided as they go against expectation
[INFO] [stdout]   --> wa-server/src/types/judge.rs:42:10
[INFO] [stdout]    |
[INFO] [stdout] 42 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_SERIALIZE_FOR_JudgeCaseResult`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: 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: 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, they should be avoided as they go against expectation
[INFO] [stdout]   --> wa-server/src/types/judge.rs:42:21
[INFO] [stdout]    |
[INFO] [stdout] 42 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |                     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_JudgeCaseResult`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: 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: 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, they should be avoided as they go against expectation
[INFO] [stdout]   --> wa-server/src/types/judge.rs:49:10
[INFO] [stdout]    |
[INFO] [stdout] 49 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_SERIALIZE_FOR_JudgeResult`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: 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: 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, they should be avoided as they go against expectation
[INFO] [stdout]   --> wa-server/src/types/judge.rs:49:21
[INFO] [stdout]    |
[INFO] [stdout] 49 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |                     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_JudgeResult`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: 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: 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, they should be avoided as they go against expectation
[INFO] [stdout]   --> wa-server/src/types/judge.rs:57:10
[INFO] [stdout]    |
[INFO] [stdout] 57 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_SERIALIZE_FOR_Update`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: 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: 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, they should be avoided as they go against expectation
[INFO] [stdout]   --> wa-server/src/types/judge.rs:57:21
[INFO] [stdout]    |
[INFO] [stdout] 57 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |                     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_Update`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: 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: 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, they should be avoided as they go against expectation
[INFO] [stdout]  --> wa-server/src/types/lang.rs:3:51
[INFO] [stdout]   |
[INFO] [stdout] 3 | #[derive(Debug, Clone, Copy, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stdout]   |                                                   ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: move this `impl` block outside the of the current constant `_IMPL_SERIALIZE_FOR_Language`
[INFO] [stdout]   = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]   = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]   = note: 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: 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, they should be avoided as they go against expectation
[INFO] [stdout]  --> wa-server/src/types/lang.rs:3:62
[INFO] [stdout]   |
[INFO] [stdout] 3 | #[derive(Debug, Clone, Copy, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stdout]   |                                                              ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_Language`
[INFO] [stdout]   = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]   = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]   = note: 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: 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, they should be avoided as they go against expectation
[INFO] [stdout]   --> wa-server/src/types/sandbox.rs:14:10
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive(Deserialize)]
[INFO] [stdout]    |          ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_Limit`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: 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: 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: 32 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 1.80s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: redis v0.13.0
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 1`
[INFO] running `Command { std: "docker" "inspect" "b0fdd061a65d6c6b0293a63539c80e190b2e6f5d608c7835c619ee1f449ddaab", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b0fdd061a65d6c6b0293a63539c80e190b2e6f5d608c7835c619ee1f449ddaab", kill_on_drop: false }`
[INFO] [stdout] b0fdd061a65d6c6b0293a63539c80e190b2e6f5d608c7835c619ee1f449ddaab
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+1871252fc8bb672d40787e67404e6eaae7059369" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] d4e0304ea99e713ed52ec7b552f2ddaf9270fdb2a9bed749930c30f31e401971
[INFO] running `Command { std: "docker" "start" "-a" "d4e0304ea99e713ed52ec7b552f2ddaf9270fdb2a9bed749930c30f31e401971", kill_on_drop: false }`
[INFO] [stderr] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stderr]  --> wa-monitor/src/types.rs:6:24
[INFO] [stderr]   |
[INFO] [stderr] 6 | #[derive(Debug, Error, FromPrimitive, ToPrimitive)]
[INFO] [stderr]   |                        ^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = help: move this `impl` block outside the of the current constant `_IMPL_NUM_FromPrimitive_FOR_MonitorErrorKind`
[INFO] [stderr]   = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]   = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stderr]   = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stderr]   = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stderr]   = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stderr]   = note: this warning originates in the derive macro `FromPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stderr]  --> wa-monitor/src/types.rs:6:39
[INFO] [stderr]   |
[INFO] [stderr] 6 | #[derive(Debug, Error, FromPrimitive, ToPrimitive)]
[INFO] [stderr]   |                                       ^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = help: move this `impl` block outside the of the current constant `_IMPL_NUM_ToPrimitive_FOR_MonitorErrorKind`
[INFO] [stderr]   = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]   = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stderr]   = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stderr]   = note: the derive macro `ToPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stderr]   = note: this warning originates in the derive macro `ToPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stderr]   --> wa-monitor/src/types.rs:32:17
[INFO] [stderr]    |
[INFO] [stderr] 32 | #[derive(Debug, Serialize, Deserialize)]
[INFO] [stderr]    |                 ^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = help: move this `impl` block outside the of the current constant `_IMPL_SERIALIZE_FOR_TargetStatus`
[INFO] [stderr]    = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]    = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stderr]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stderr]   --> wa-monitor/src/types.rs:32:28
[INFO] [stderr]    |
[INFO] [stderr] 32 | #[derive(Debug, Serialize, Deserialize)]
[INFO] [stderr]    |                            ^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_TargetStatus`
[INFO] [stderr]    = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]    = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stderr]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: `wa-monitor` (lib) generated 4 warnings
[INFO] [stderr] warning: use of deprecated function `utils::compare::compare`
[INFO] [stderr]  --> wa-server/src/threads/worker.rs:3:20
[INFO] [stderr]   |
[INFO] [stderr] 3 | use crate::utils::{compare, mkfifo};
[INFO] [stderr]   |                    ^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(deprecated)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated function `utils::compare::compare`
[INFO] [stderr]    --> wa-server/src/threads/worker.rs:233:23
[INFO] [stderr]     |
[INFO] [stderr] 233 |             let cmp = compare(ignore_trailing_space, &task.stdout_path, &task.userout_path)?;
[INFO] [stderr]     |                       ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated function `utils::compare::compare`
[INFO] [stderr]  --> wa-server/src/utils/mod.rs:4:18
[INFO] [stderr]   |
[INFO] [stderr] 4 | pub use compare::compare;
[INFO] [stderr]   |                  ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `0` is never read
[INFO] [stderr]   --> wa-server/src/types/mod.rs:46:13
[INFO] [stderr]    |
[INFO] [stderr] 46 |     Channel(&'static str),
[INFO] [stderr]    |     ------- ^^^^^^^^^^^^
[INFO] [stderr]    |     |
[INFO] [stderr]    |     field in this variant
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` on by default
[INFO] [stderr] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stderr]    |
[INFO] [stderr] 46 |     Channel(()),
[INFO] [stderr]    |             ~~
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stderr]  --> wa-server/src/config.rs:6:10
[INFO] [stderr]   |
[INFO] [stderr] 6 | #[derive(Deserialize)]
[INFO] [stderr]   |          ^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_RedisConfig`
[INFO] [stderr]   = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]   = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stderr]   = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stderr]   = 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] [stderr]   = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stderr]   = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stderr]   --> wa-server/src/config.rs:19:10
[INFO] [stderr]    |
[INFO] [stderr] 19 | #[derive(Deserialize)]
[INFO] [stderr]    |          ^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_Config`
[INFO] [stderr]    = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]    = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stderr]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stderr]   --> wa-server/src/main.rs:17:24
[INFO] [stderr]    |
[INFO] [stderr] 17 |                 panic!(e)
[INFO] [stderr]    |                        ^
[INFO] [stderr]    |
[INFO] [stderr]   ::: wa-server/src/threads/listener.rs:17:13
[INFO] [stderr]    |
[INFO] [stderr] 17 |             handle!(self.redis.reload(), "redis error: {}");
[INFO] [stderr]    |             ----------------------------------------------- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr]    = note: `#[warn(non_fmt_panics)]` on by default
[INFO] [stderr]    = note: this warning originates in the macro `handle` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] help: add a "{}" format string to `Display` the message
[INFO] [stderr]    |
[INFO] [stderr] 17 |                 panic!("{}", e)
[INFO] [stderr]    |                        +++++
[INFO] [stderr] help: or use std::panic::panic_any instead
[INFO] [stderr]    |
[INFO] [stderr] 17 |                 std::panic::panic_any(e)
[INFO] [stderr]    |                 ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stderr] 
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stderr]   --> wa-server/src/main.rs:17:24
[INFO] [stderr]    |
[INFO] [stderr] 17 |                 panic!(e)
[INFO] [stderr]    |                        ^
[INFO] [stderr]    |
[INFO] [stderr]   ::: wa-server/src/threads/listener.rs:22:34
[INFO] [stderr]    |
[INFO] [stderr] 22 |                 let submission = handle!(self.redis.get_submission(), "redis error: {}");
[INFO] [stderr]    |                                  ------------------------------------------------------- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr]    = note: this warning originates in the macro `handle` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] help: add a "{}" format string to `Display` the message
[INFO] [stderr]    |
[INFO] [stderr] 17 |                 panic!("{}", e)
[INFO] [stderr]    |                        +++++
[INFO] [stderr] help: or use std::panic::panic_any instead
[INFO] [stderr]    |
[INFO] [stderr] 17 |                 std::panic::panic_any(e)
[INFO] [stderr]    |                 ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stderr] 
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stderr]   --> wa-server/src/main.rs:17:24
[INFO] [stderr]    |
[INFO] [stderr] 17 |                   panic!(e)
[INFO] [stderr]    |                          ^
[INFO] [stderr]    |
[INFO] [stderr]   ::: wa-server/src/threads/listener.rs:26:17
[INFO] [stderr]    |
[INFO] [stderr] 26 | /                 handle!(
[INFO] [stderr] 27 | |                     self.sync_data(submission.problem_id),
[INFO] [stderr] 28 | |                     "fail to sync data: {}"
[INFO] [stderr] 29 | |                 );
[INFO] [stderr]    | |_________________- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr]    = note: this warning originates in the macro `handle` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] help: add a "{}" format string to `Display` the message
[INFO] [stderr]    |
[INFO] [stderr] 17 |                 panic!("{}", e)
[INFO] [stderr]    |                        +++++
[INFO] [stderr] help: or use std::panic::panic_any instead
[INFO] [stderr]    |
[INFO] [stderr] 17 |                 std::panic::panic_any(e)
[INFO] [stderr]    |                 ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stderr] 
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stderr]   --> wa-server/src/main.rs:17:24
[INFO] [stderr]    |
[INFO] [stderr] 17 |                   panic!(e)
[INFO] [stderr]    |                          ^
[INFO] [stderr]    |
[INFO] [stderr]   ::: wa-server/src/threads/listener.rs:31:17
[INFO] [stderr]    |
[INFO] [stderr] 31 | /                 handle!(
[INFO] [stderr] 32 | |                     self.update_sender
[INFO] [stderr] 33 | |                         .send(submission.update(JudgeStatus::Queuing)),
[INFO] [stderr] 34 | |                     "updater is disconnected: {}"
[INFO] [stderr] 35 | |                 );
[INFO] [stderr]    | |_________________- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr]    = note: this warning originates in the macro `handle` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] help: add a "{}" format string to `Display` the message
[INFO] [stderr]    |
[INFO] [stderr] 17 |                 panic!("{}", e)
[INFO] [stderr]    |                        +++++
[INFO] [stderr] help: or use std::panic::panic_any instead
[INFO] [stderr]    |
[INFO] [stderr] 17 |                 std::panic::panic_any(e)
[INFO] [stderr]    |                 ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stderr] 
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stderr]   --> wa-server/src/main.rs:17:24
[INFO] [stderr]    |
[INFO] [stderr] 17 |                   panic!(e)
[INFO] [stderr]    |                          ^
[INFO] [stderr]    |
[INFO] [stderr]   ::: wa-server/src/threads/listener.rs:37:17
[INFO] [stderr]    |
[INFO] [stderr] 37 | /                 handle!(
[INFO] [stderr] 38 | |                     self.submission_sender.send(submission),
[INFO] [stderr] 39 | |                     "workers are disconnected: {}"
[INFO] [stderr] 40 | |                 );
[INFO] [stderr]    | |_________________- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr]    = note: this warning originates in the macro `handle` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] help: add a "{}" format string to `Display` the message
[INFO] [stderr]    |
[INFO] [stderr] 17 |                 panic!("{}", e)
[INFO] [stderr]    |                        +++++
[INFO] [stderr] help: or use std::panic::panic_any instead
[INFO] [stderr]    |
[INFO] [stderr] 17 |                 std::panic::panic_any(e)
[INFO] [stderr]    |                 ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stderr] 
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stderr]   --> wa-server/src/main.rs:17:24
[INFO] [stderr]    |
[INFO] [stderr] 17 |                   panic!(e)
[INFO] [stderr]    |                          ^
[INFO] [stderr]    |
[INFO] [stderr]   ::: wa-server/src/threads/updater.rs:13:26
[INFO] [stderr]    |
[INFO] [stderr] 13 |               let update = handle!(
[INFO] [stderr]    |  __________________________-
[INFO] [stderr] 14 | |                 self.update_receiver.recv(),
[INFO] [stderr] 15 | |                 "update senders are disconnected: {}"
[INFO] [stderr] 16 | |             );
[INFO] [stderr]    | |_____________- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr]    = note: this warning originates in the macro `handle` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] help: add a "{}" format string to `Display` the message
[INFO] [stderr]    |
[INFO] [stderr] 17 |                 panic!("{}", e)
[INFO] [stderr]    |                        +++++
[INFO] [stderr] help: or use std::panic::panic_any instead
[INFO] [stderr]    |
[INFO] [stderr] 17 |                 std::panic::panic_any(e)
[INFO] [stderr]    |                 ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stderr] 
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stderr]   --> wa-server/src/main.rs:17:24
[INFO] [stderr]    |
[INFO] [stderr] 17 |                 panic!(e)
[INFO] [stderr]    |                        ^
[INFO] [stderr]    |
[INFO] [stderr]   ::: wa-server/src/threads/updater.rs:24:13
[INFO] [stderr]    |
[INFO] [stderr] 24 |             handle!(self.redis.update_submission(update), "redis error: {}");
[INFO] [stderr]    |             ---------------------------------------------------------------- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr]    = note: this warning originates in the macro `handle` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] help: add a "{}" format string to `Display` the message
[INFO] [stderr]    |
[INFO] [stderr] 17 |                 panic!("{}", e)
[INFO] [stderr]    |                        +++++
[INFO] [stderr] help: or use std::panic::panic_any instead
[INFO] [stderr]    |
[INFO] [stderr] 17 |                 std::panic::panic_any(e)
[INFO] [stderr]    |                 ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stderr] 
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stderr]   --> wa-server/src/main.rs:17:24
[INFO] [stderr]    |
[INFO] [stderr] 17 |                   panic!(e)
[INFO] [stderr]    |                          ^
[INFO] [stderr]    |
[INFO] [stderr]   ::: wa-server/src/threads/worker.rs:29:30
[INFO] [stderr]    |
[INFO] [stderr] 29 |               let submission = handle!(
[INFO] [stderr]    |  ______________________________-
[INFO] [stderr] 30 | |                 self.submission_receiver.recv(),
[INFO] [stderr] 31 | |                 "submission sender is disconnected: {}"
[INFO] [stderr] 32 | |             );
[INFO] [stderr]    | |_____________- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr]    = note: this warning originates in the macro `handle` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] help: add a "{}" format string to `Display` the message
[INFO] [stderr]    |
[INFO] [stderr] 17 |                 panic!("{}", e)
[INFO] [stderr]    |                        +++++
[INFO] [stderr] help: or use std::panic::panic_any instead
[INFO] [stderr]    |
[INFO] [stderr] 17 |                 std::panic::panic_any(e)
[INFO] [stderr]    |                 ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stderr] 
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stderr]   --> wa-server/src/main.rs:26:24
[INFO] [stderr]    |
[INFO] [stderr] 26 |                   panic!(e)
[INFO] [stderr]    |                          ^
[INFO] [stderr]    |
[INFO] [stderr]   ::: wa-server/src/threads/worker.rs:37:13
[INFO] [stderr]    |
[INFO] [stderr] 37 | /             handle!(@custom
[INFO] [stderr] 38 | |                 std::fs::create_dir_all(&working_dir),
[INFO] [stderr] 39 | |                 "can not create dir: {:?}",
[INFO] [stderr] 40 | |                 &working_dir,
[INFO] [stderr] 41 | |             );
[INFO] [stderr]    | |_____________- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr]    = note: this warning originates in the macro `handle` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] help: add a "{}" format string to `Display` the message
[INFO] [stderr]    |
[INFO] [stderr] 26 |                 panic!("{}", e)
[INFO] [stderr]    |                        +++++
[INFO] [stderr] help: or use std::panic::panic_any instead
[INFO] [stderr]    |
[INFO] [stderr] 26 |                 std::panic::panic_any(e)
[INFO] [stderr]    |                 ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stderr] 
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stderr]   --> wa-server/src/main.rs:26:24
[INFO] [stderr]    |
[INFO] [stderr] 26 |                   panic!(e)
[INFO] [stderr]    |                          ^
[INFO] [stderr]    |
[INFO] [stderr]   ::: wa-server/src/threads/worker.rs:63:17
[INFO] [stderr]    |
[INFO] [stderr] 63 | /                 handle!(@custom
[INFO] [stderr] 64 | |                     std::fs::remove_dir_all(&working_dir),
[INFO] [stderr] 65 | |                     "can not remove dir: {:?}",
[INFO] [stderr] 66 | |                     &working_dir,
[INFO] [stderr] 67 | |                 );
[INFO] [stderr]    | |_________________- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr]    = note: this warning originates in the macro `handle` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] help: add a "{}" format string to `Display` the message
[INFO] [stderr]    |
[INFO] [stderr] 26 |                 panic!("{}", e)
[INFO] [stderr]    |                        +++++
[INFO] [stderr] help: or use std::panic::panic_any instead
[INFO] [stderr]    |
[INFO] [stderr] 26 |                 std::panic::panic_any(e)
[INFO] [stderr]    |                 ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stderr] 
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stderr]    --> wa-server/src/main.rs:17:24
[INFO] [stderr]     |
[INFO] [stderr] 17  |                   panic!(e)
[INFO] [stderr]     |                          ^
[INFO] [stderr]     |
[INFO] [stderr]    ::: wa-server/src/threads/worker.rs:245:9
[INFO] [stderr]     |
[INFO] [stderr] 245 | /         handle!(
[INFO] [stderr] 246 | |             self.update_sender.send(update),
[INFO] [stderr] 247 | |             "updater is disconnected: {}"
[INFO] [stderr] 248 | |         );
[INFO] [stderr]     | |_________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr]     = note: this warning originates in the macro `handle` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] help: add a "{}" format string to `Display` the message
[INFO] [stderr]     |
[INFO] [stderr] 17  |                 panic!("{}", e)
[INFO] [stderr]     |                        +++++
[INFO] [stderr] help: or use std::panic::panic_any instead
[INFO] [stderr]     |
[INFO] [stderr] 17  |                 std::panic::panic_any(e)
[INFO] [stderr]     |                 ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stderr]  --> wa-server/src/types/judge.rs:3:45
[INFO] [stderr]   |
[INFO] [stderr] 3 | #[derive(Debug, Clone, Copy, PartialEq, Eq, Serialize, Deserialize)]
[INFO] [stderr]   |                                             ^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = help: move this `impl` block outside the of the current constant `_IMPL_SERIALIZE_FOR_JudgeType`
[INFO] [stderr]   = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]   = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stderr]   = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stderr]   = 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] [stderr]   = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stderr]  --> wa-server/src/types/judge.rs:3:56
[INFO] [stderr]   |
[INFO] [stderr] 3 | #[derive(Debug, Clone, Copy, PartialEq, Eq, Serialize, Deserialize)]
[INFO] [stderr]   |                                                        ^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_JudgeType`
[INFO] [stderr]   = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]   = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stderr]   = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stderr]   = 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] [stderr]   = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stderr]   --> wa-server/src/types/judge.rs:11:10
[INFO] [stderr]    |
[INFO] [stderr] 11 | #[derive(Serialize, Deserialize)]
[INFO] [stderr]    |          ^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = help: move this `impl` block outside the of the current constant `_IMPL_SERIALIZE_FOR_Submission`
[INFO] [stderr]    = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]    = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stderr]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stderr]   --> wa-server/src/types/judge.rs:11:21
[INFO] [stderr]    |
[INFO] [stderr] 11 | #[derive(Serialize, Deserialize)]
[INFO] [stderr]    |                     ^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_Submission`
[INFO] [stderr]    = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]    = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stderr]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stderr]   --> wa-server/src/types/judge.rs:23:45
[INFO] [stderr]    |
[INFO] [stderr] 23 | #[derive(Debug, Clone, Copy, PartialEq, Eq, Serialize, Deserialize)]
[INFO] [stderr]    |                                             ^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = help: move this `impl` block outside the of the current constant `_IMPL_SERIALIZE_FOR_JudgeStatus`
[INFO] [stderr]    = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]    = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stderr]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stderr]   --> wa-server/src/types/judge.rs:23:56
[INFO] [stderr]    |
[INFO] [stderr] 23 | #[derive(Debug, Clone, Copy, PartialEq, Eq, Serialize, Deserialize)]
[INFO] [stderr]    |                                                        ^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_JudgeStatus`
[INFO] [stderr]    = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]    = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stderr]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stderr]   --> wa-server/src/types/judge.rs:42:10
[INFO] [stderr]    |
[INFO] [stderr] 42 | #[derive(Serialize, Deserialize)]
[INFO] [stderr]    |          ^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = help: move this `impl` block outside the of the current constant `_IMPL_SERIALIZE_FOR_JudgeCaseResult`
[INFO] [stderr]    = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]    = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stderr]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stderr]   --> wa-server/src/types/judge.rs:42:21
[INFO] [stderr]    |
[INFO] [stderr] 42 | #[derive(Serialize, Deserialize)]
[INFO] [stderr]    |                     ^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_JudgeCaseResult`
[INFO] [stderr]    = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]    = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stderr]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stderr]   --> wa-server/src/types/judge.rs:49:10
[INFO] [stderr]    |
[INFO] [stderr] 49 | #[derive(Serialize, Deserialize)]
[INFO] [stderr]    |          ^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = help: move this `impl` block outside the of the current constant `_IMPL_SERIALIZE_FOR_JudgeResult`
[INFO] [stderr]    = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]    = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stderr]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stderr]   --> wa-server/src/types/judge.rs:49:21
[INFO] [stderr]    |
[INFO] [stderr] 49 | #[derive(Serialize, Deserialize)]
[INFO] [stderr]    |                     ^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_JudgeResult`
[INFO] [stderr]    = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]    = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stderr]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stderr]   --> wa-server/src/types/judge.rs:57:10
[INFO] [stderr]    |
[INFO] [stderr] 57 | #[derive(Serialize, Deserialize)]
[INFO] [stderr]    |          ^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = help: move this `impl` block outside the of the current constant `_IMPL_SERIALIZE_FOR_Update`
[INFO] [stderr]    = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]    = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stderr]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stderr]   --> wa-server/src/types/judge.rs:57:21
[INFO] [stderr]    |
[INFO] [stderr] 57 | #[derive(Serialize, Deserialize)]
[INFO] [stderr]    |                     ^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_Update`
[INFO] [stderr]    = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]    = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stderr]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stderr]  --> wa-server/src/types/lang.rs:3:51
[INFO] [stderr]   |
[INFO] [stderr] 3 | #[derive(Debug, Clone, Copy, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stderr]   |                                                   ^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = help: move this `impl` block outside the of the current constant `_IMPL_SERIALIZE_FOR_Language`
[INFO] [stderr]   = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]   = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stderr]   = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stderr]   = 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] [stderr]   = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stderr]  --> wa-server/src/types/lang.rs:3:62
[INFO] [stderr]   |
[INFO] [stderr] 3 | #[derive(Debug, Clone, Copy, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stderr]   |                                                              ^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_Language`
[INFO] [stderr]   = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]   = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stderr]   = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stderr]   = 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] [stderr]   = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stderr]   --> wa-server/src/types/sandbox.rs:14:10
[INFO] [stderr]    |
[INFO] [stderr] 14 | #[derive(Deserialize)]
[INFO] [stderr]    |          ^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_Limit`
[INFO] [stderr]    = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]    = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stderr]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: `wa-server` (bin "wa-server" test) generated 32 warnings (run `cargo fix --bin "wa-server" --tests` to apply 11 suggestions)
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stderr]   --> wa-compare/src/main.rs:56:32
[INFO] [stderr]    |
[INFO] [stderr] 56 |                 None => panic!(e),
[INFO] [stderr]    |                                ^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr]    = note: `#[warn(non_fmt_panics)]` on by default
[INFO] [stderr] help: add a "{}" format string to `Display` the message
[INFO] [stderr]    |
[INFO] [stderr] 56 |                 None => panic!("{}", e),
[INFO] [stderr]    |                                +++++
[INFO] [stderr] help: or use std::panic::panic_any instead
[INFO] [stderr]    |
[INFO] [stderr] 56 |                 None => std::panic::panic_any(e),
[INFO] [stderr]    |                         ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stderr] 
[INFO] [stderr] warning: `wa-compare` (bin "wa-compare" test) generated 1 warning (run `cargo fix --bin "wa-compare" --tests` to apply 1 suggestion)
[INFO] [stderr] warning: `wa-monitor` (lib test) generated 4 warnings (4 duplicates)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.09s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: redis v0.13.0
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 1`
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/wa_compare-50562e6c9140a73a)
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test test_compare ... FAILED
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- test_compare stdout ----
[INFO] [stdout] thread 'test_compare' panicked at wa-compare/src/lib.rs:74:5:
[INFO] [stdout] called `Result::unwrap()` on an `Err` value: Os { code: 2, kind: NotFound, message: "No such file or directory" }
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5621f922de75 - std::backtrace_rs::backtrace::libunwind::trace::h59d96bdb08384354
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/std/src/../../backtrace/src/backtrace/libunwind.rs:105:5
[INFO] [stdout]    1:     0x5621f922de75 - std::backtrace_rs::backtrace::trace_unsynchronized::h9cf5becacfc93fba
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
[INFO] [stdout]    2:     0x5621f922de75 - std::sys_common::backtrace::_print_fmt::h10b76d10405dbd48
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/std/src/sys_common/backtrace.rs:68:5
[INFO] [stdout]    3:     0x5621f922de75 - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::h6ed9e62a156d84e4
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/std/src/sys_common/backtrace.rs:44:22
[INFO] [stdout]    4:     0x5621f92546cb - core::fmt::rt::Argument::fmt::h645c680983f03c9f
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/core/src/fmt/rt.rs:165:63
[INFO] [stdout]    5:     0x5621f92546cb - core::fmt::write::h8bcd80919a02be29
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/core/src/fmt/mod.rs:1169:21
[INFO] [stdout]    6:     0x5621f922b6af - std::io::Write::write_fmt::h8d0c47c662cad79c
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/std/src/io/mod.rs:1835:15
[INFO] [stdout]    7:     0x5621f922dc4e - std::sys_common::backtrace::_print::h6306f131a28d62b0
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/std/src/sys_common/backtrace.rs:47:5
[INFO] [stdout]    8:     0x5621f922dc4e - std::sys_common::backtrace::print::h7079288e0a26dfcc
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/std/src/sys_common/backtrace.rs:34:9
[INFO] [stdout]    9:     0x5621f922f679 - std::panicking::default_hook::{{closure}}::hb063ecec81a736ba
[INFO] [stdout]   10:     0x5621f922f33e - std::panicking::default_hook::hd56ee406bf547b5c
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/std/src/panicking.rs:295:9
[INFO] [stdout]   11:     0x5621f92003ba - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::he5eacdef44c8728f
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/alloc/src/boxed.rs:2036:9
[INFO] [stdout]   12:     0x5621f92003ba - test::test_main::{{closure}}::h0ec9aed229e79095
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/test/src/lib.rs:137:21
[INFO] [stdout]   13:     0x5621f922fc7b - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::hcbd0d80e1ad4e4f9
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/alloc/src/boxed.rs:2036:9
[INFO] [stdout]   14:     0x5621f922fc7b - std::panicking::rust_panic_with_hook::h624aa3ca42ebb8f2
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/std/src/panicking.rs:799:13
[INFO] [stdout]   15:     0x5621f922f9f4 - std::panicking::begin_panic_handler::{{closure}}::hbc4e76194a5e287c
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/std/src/panicking.rs:664:13
[INFO] [stdout]   16:     0x5621f922e339 - std::sys_common::backtrace::__rust_end_short_backtrace::h847fedc9d1ff7b6d
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/std/src/sys_common/backtrace.rs:171:18
[INFO] [stdout]   17:     0x5621f922f727 - rust_begin_unwind
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/std/src/panicking.rs:652:5
[INFO] [stdout]   18:     0x5621f91b6843 - core::panicking::panic_fmt::hec11a924b87ce965
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/core/src/panicking.rs:72:14
[INFO] [stdout]   19:     0x5621f91b6c96 - core::result::unwrap_failed::h382691b96ca8c13a
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/core/src/result.rs:1654:5
[INFO] [stdout]   20:     0x5621f91b98bf - core::result::Result<T,E>::unwrap::hcebb1f94308d04a4
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/core/src/result.rs:1077:23
[INFO] [stdout]   21:     0x5621f91b98bf - wa_compare::test_compare_utf8::h678e9d794517f611
[INFO] [stdout]                                at /opt/rustwide/workdir/wa-compare/src/lib.rs:45:9
[INFO] [stdout]   22:     0x5621f91c3ce6 - wa_compare::test_compare::h4f82094668ed3949
[INFO] [stdout]                                at /opt/rustwide/workdir/wa-compare/src/lib.rs:24:5
[INFO] [stdout]   23:     0x5621f91c3cc7 - wa_compare::test_compare::{{closure}}::h6ea4d6306b7687cf
[INFO] [stdout]                                at /opt/rustwide/workdir/wa-compare/src/lib.rs:23:18
[INFO] [stdout]   24:     0x5621f91ca356 - core::ops::function::FnOnce::call_once::h7a1b4267ced95b63
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   25:     0x5621f9204d9b - core::ops::function::FnOnce::call_once::h2e43a8f6f3d94b99
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   26:     0x5621f9204d9b - test::__rust_begin_short_backtrace::h214c9f2d2d3fee90
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/test/src/lib.rs:625:18
[INFO] [stdout]   27:     0x5621f92044a1 - test::run_test_in_process::{{closure}}::h510b7ba7990692a5
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/test/src/lib.rs:648:60
[INFO] [stdout]   28:     0x5621f92044a1 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h4157186197a93871
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/core/src/panic/unwind_safe.rs:272:9
[INFO] [stdout]   29:     0x5621f92044a1 - std::panicking::try::do_call::h1bf2463bccd4b28c
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/std/src/panicking.rs:559:40
[INFO] [stdout]   30:     0x5621f92044a1 - std::panicking::try::hd6d4808c9fab4fa5
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/std/src/panicking.rs:523:19
[INFO] [stdout]   31:     0x5621f92044a1 - std::panic::catch_unwind::hd5641d97d123f9f2
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/std/src/panic.rs:149:14
[INFO] [stdout]   32:     0x5621f92044a1 - test::run_test_in_process::hc273b71c8b878a4c
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/test/src/lib.rs:648:27
[INFO] [stdout]   33:     0x5621f92044a1 - test::run_test::{{closure}}::h6838df834eb8467e
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/test/src/lib.rs:569:43
[INFO] [stdout]   34:     0x5621f91cce64 - test::run_test::{{closure}}::h608b98ecff5665fb
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/test/src/lib.rs:599:41
[INFO] [stdout]   35:     0x5621f91cce64 - std::sys_common::backtrace::__rust_begin_short_backtrace::hdc4182b97d1042e9
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/std/src/sys_common/backtrace.rs:155:18
[INFO] [stdout]   36:     0x5621f91d1892 - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::h571773fd21d674c8
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/std/src/thread/mod.rs:542:17
[INFO] [stdout]   37:     0x5621f91d1892 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::hdcd384cf2fa70ba3
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/core/src/panic/unwind_safe.rs:272:9
[INFO] [stdout]   38:     0x5621f91d1892 - std::panicking::try::do_call::h4f1a44bd81423be1
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/std/src/panicking.rs:559:40
[INFO] [stdout]   39:     0x5621f91d1892 - std::panicking::try::h5e02afcb81dcd361
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/std/src/panicking.rs:523:19
[INFO] [stdout]   40:     0x5621f91d1892 - std::panic::catch_unwind::h022f75775bfd8c45
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/std/src/panic.rs:149:14
[INFO] [stdout]   41:     0x5621f91d1892 - std::thread::Builder::spawn_unchecked_::{{closure}}::hf5a62e9e4e6df1f8
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/std/src/thread/mod.rs:541:30
[INFO] [stdout]   42:     0x5621f91d1892 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h6d56360aeb9509a7
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   43:     0x5621f9233e6b - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h7a343dc551c06baa
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/alloc/src/boxed.rs:2022:9
[INFO] [stdout]   44:     0x5621f9233e6b - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h30b8111cbaa644f3
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/alloc/src/boxed.rs:2022:9
[INFO] [stdout]   45:     0x5621f9233e6b - std::sys::pal::unix::thread::Thread::new::thread_start::h7404e134e61e7a11
[INFO] [stdout]                                at /rustc/1871252fc8bb672d40787e67404e6eaae7059369/library/std/src/sys/pal/unix/thread.rs:108:17
[INFO] [stdout]   46:     0x7fe8e57e2ac3 - <unknown>
[INFO] [stdout]   47:     0x7fe8e5873a04 - __clone
[INFO] [stdout]   48:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     test_compare
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 0 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s
[INFO] [stdout] 
[INFO] [stderr] error: test failed, to rerun pass `-p wa-compare --lib`
[INFO] running `Command { std: "docker" "inspect" "d4e0304ea99e713ed52ec7b552f2ddaf9270fdb2a9bed749930c30f31e401971", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d4e0304ea99e713ed52ec7b552f2ddaf9270fdb2a9bed749930c30f31e401971", kill_on_drop: false }`
[INFO] [stdout] d4e0304ea99e713ed52ec7b552f2ddaf9270fdb2a9bed749930c30f31e401971
[INFO] testing Nugine/wrong-answer against try#b642703cf9526da1e72c0b6755753b939a9c6b6d for pr-125151
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FNugine%2Fwrong-answer" "/workspace/builds/worker-5-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc2/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/Nugine/wrong-answer on toolchain b642703cf9526da1e72c0b6755753b939a9c6b6d
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b642703cf9526da1e72c0b6755753b939a9c6b6d" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/Nugine/wrong-answer
[INFO] finished tweaking git repo https://github.com/Nugine/wrong-answer
[INFO] tweaked toml for git repo https://github.com/Nugine/wrong-answer written to /workspace/builds/worker-5-tc2/source/Cargo.toml
[INFO] crate git repo https://github.com/Nugine/wrong-answer 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" "+b642703cf9526da1e72c0b6755753b939a9c6b6d" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+b642703cf9526da1e72c0b6755753b939a9c6b6d" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] ac120579d50fab8cbbbe235ed11256f0e3b2fb893c5eb50445924465dcd17f4e
[INFO] running `Command { std: "docker" "start" "-a" "ac120579d50fab8cbbbe235ed11256f0e3b2fb893c5eb50445924465dcd17f4e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "ac120579d50fab8cbbbe235ed11256f0e3b2fb893c5eb50445924465dcd17f4e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ac120579d50fab8cbbbe235ed11256f0e3b2fb893c5eb50445924465dcd17f4e", kill_on_drop: false }`
[INFO] [stdout] ac120579d50fab8cbbbe235ed11256f0e3b2fb893c5eb50445924465dcd17f4e
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+b642703cf9526da1e72c0b6755753b939a9c6b6d" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 9dc9ee099917da9c4d44679e8f6af750ca11fee25c400d2552f167e6660b160f
[INFO] running `Command { std: "docker" "start" "-a" "9dc9ee099917da9c4d44679e8f6af750ca11fee25c400d2552f167e6660b160f", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.65
[INFO] [stderr]    Compiling autocfg v0.1.6
[INFO] [stderr]    Compiling maybe-uninit v2.0.0
[INFO] [stderr]    Compiling log v0.4.8
[INFO] [stderr]    Compiling proc-macro2 v1.0.5
[INFO] [stderr]    Compiling syn v1.0.5
[INFO] [stderr]    Compiling memchr v2.2.1
[INFO] [stderr]    Compiling rand_core v0.4.2
[INFO] [stderr]    Compiling byteorder v1.3.2
[INFO] [stderr]    Compiling scopeguard v1.0.0
[INFO] [stderr]    Compiling parking_lot_core v0.6.2
[INFO] [stderr]    Compiling rand_core v0.3.1
[INFO] [stderr]    Compiling parking_lot v0.9.0
[INFO] [stderr]    Compiling smallvec v0.6.14
[INFO] [stderr]    Compiling futures v0.1.29
[INFO] [stderr]    Compiling lock_api v0.3.1
[INFO] [stderr]    Compiling unicode-segmentation v1.3.0
[INFO] [stderr]    Compiling unicode-width v0.1.6
[INFO] [stderr]    Compiling iovec v0.1.4
[INFO] [stderr]    Compiling atty v0.2.13
[INFO] [stderr]    Compiling textwrap v0.11.0
[INFO] [stderr]    Compiling net2 v0.2.38
[INFO] [stderr]    Compiling bytes v0.4.12
[INFO] [stderr]    Compiling heck v0.3.1
[INFO] [stderr]    Compiling quote v1.0.2
[INFO] [stderr]    Compiling aho-corasick v0.7.6
[INFO] [stderr]    Compiling rand_chacha v0.1.1
[INFO] [stderr]    Compiling rand_pcg v0.1.2
[INFO] [stderr]    Compiling thread_local v0.3.6
[INFO] [stderr]    Compiling ansi_term v0.11.0
[INFO] [stderr]    Compiling strsim v0.8.0
[INFO] [stderr]    Compiling vec_map v0.8.1
[INFO] [stderr]    Compiling quick-error v1.2.2
[INFO] [stderr]    Compiling regex-syntax v0.6.12
[INFO] [stderr]    Compiling clap v2.33.0
[INFO] [stderr]    Compiling humantime v1.3.0
[INFO] [stderr]    Compiling mio v0.6.19
[INFO] [stderr]    Compiling rand v0.6.5
[INFO] [stderr]    Compiling tokio-io v0.1.12
[INFO] [stderr]    Compiling crossbeam-utils v0.6.6
[INFO] [stderr]    Compiling ryu v1.0.1
[INFO] [stderr]    Compiling termcolor v1.0.5
[INFO] [stderr]    Compiling serde v1.0.101
[INFO] [stderr]    Compiling itoa v0.4.4
[INFO] [stderr]    Compiling tokio-sync v0.1.7
[INFO] [stderr]    Compiling tokio-executor v0.1.8
[INFO] [stderr]    Compiling rand_os v0.1.3
[INFO] [stderr]    Compiling num_cpus v1.10.1
[INFO] [stderr]    Compiling rand_isaac v0.1.1
[INFO] [stderr]    Compiling rand_hc v0.1.0
[INFO] [stderr]    Compiling rand_xorshift v0.1.1
[INFO] [stderr]    Compiling num-traits v0.2.8
[INFO] [stderr]    Compiling rand_jitter v0.1.4
[INFO] [stderr]    Compiling regex v1.3.1
[INFO] [stderr]    Compiling parking_lot_core v0.5.0
[INFO] [stderr]    Compiling unicode-bidi v0.3.4
[INFO] [stderr]    Compiling tokio-reactor v0.1.10
[INFO] [stderr]    Compiling proc-macro-error v0.2.6
[INFO] [stderr]    Compiling unicode-normalization v0.1.8
[INFO] [stderr]    Compiling parking_lot v0.8.0
[INFO] [stderr]    Compiling void v1.0.2
[INFO] [stderr]    Compiling env_logger v0.7.1
[INFO] [stderr]    Compiling unreachable v1.0.0
[INFO] [stderr]    Compiling crossbeam-utils v0.7.2
[INFO] [stderr]    Compiling mio-uds v0.6.7
[INFO] [stderr]    Compiling tokio-codec v0.1.1
[INFO] [stderr]    Compiling idna v0.2.0
[INFO] [stderr]    Compiling lock_api v0.2.0
[INFO] [stderr]    Compiling percent-encoding v2.1.0
[INFO] [stderr]    Compiling either v1.5.3
[INFO] [stderr]    Compiling ascii v0.9.3
[INFO] [stderr]    Compiling tokio-uds v0.2.5
[INFO] [stderr]    Compiling url v2.1.0
[INFO] [stderr]    Compiling combine v3.8.1
[INFO] [stderr]    Compiling tokio-tcp v0.1.3
[INFO] [stderr]    Compiling structopt-derive v0.3.3
[INFO] [stderr]    Compiling serde_derive v1.0.101
[INFO] [stderr]    Compiling thiserror-impl v1.0.2
[INFO] [stderr]    Compiling num-derive v0.3.0
[INFO] [stderr]    Compiling scheduled-thread-pool v0.2.2
[INFO] [stderr]    Compiling dtoa v0.4.4
[INFO] [stderr]    Compiling sha1 v0.6.0
[INFO] [stderr]    Compiling r2d2 v0.8.5
[INFO] [stderr]    Compiling thiserror v1.0.2
[INFO] [stderr]    Compiling crossbeam-channel v0.4.4
[INFO] [stderr]    Compiling structopt v0.3.3
[INFO] [stderr]    Compiling wa-compare v0.1.0 (/opt/rustwide/workdir/wa-compare)
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]   --> wa-compare/src/main.rs:56:32
[INFO] [stdout]    |
[INFO] [stdout] 56 |                 None => panic!(e),
[INFO] [stdout]    |                                ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]    = note: `#[warn(non_fmt_panics)]` on by default
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]    |
[INFO] [stdout] 56 |                 None => panic!("{}", e),
[INFO] [stdout]    |                                +++++
[INFO] [stdout] help: or use std::panic::panic_any instead
[INFO] [stdout]    |
[INFO] [stdout] 56 |                 None => std::panic::panic_any(e),
[INFO] [stdout]    |                         ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 1 warning emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling redis v0.13.0
[INFO] [stderr]    Compiling r2d2_redis v0.12.0
[INFO] [stderr]    Compiling serde_json v1.0.41
[INFO] [stderr]    Compiling wa-monitor v0.1.0 (/opt/rustwide/workdir/wa-monitor)
[INFO] [stdout] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]  --> wa-monitor/src/types.rs:6:24
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[derive(Debug, Error, FromPrimitive, ToPrimitive)]
[INFO] [stdout]   |                        ^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: move this `impl` block outside the of the current constant `_IMPL_NUM_FromPrimitive_FOR_MonitorErrorKind`
[INFO] [stdout]   = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]   = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]   = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stdout]   = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stdout]   = note: this warning originates in the derive macro `FromPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]  --> wa-monitor/src/types.rs:6:39
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[derive(Debug, Error, FromPrimitive, ToPrimitive)]
[INFO] [stdout]   |                                       ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: move this `impl` block outside the of the current constant `_IMPL_NUM_ToPrimitive_FOR_MonitorErrorKind`
[INFO] [stdout]   = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]   = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]   = note: the derive macro `ToPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stdout]   = note: this warning originates in the derive macro `ToPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]   --> wa-monitor/src/types.rs:32:17
[INFO] [stdout]    |
[INFO] [stdout] 32 | #[derive(Debug, Serialize, Deserialize)]
[INFO] [stdout]    |                 ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_SERIALIZE_FOR_TargetStatus`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: 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: 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, they should be avoided as they go against expectation
[INFO] [stdout]   --> wa-monitor/src/types.rs:32:28
[INFO] [stdout]    |
[INFO] [stdout] 32 | #[derive(Debug, Serialize, Deserialize)]
[INFO] [stdout]    |                            ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_TargetStatus`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: 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: 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: 4 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling wa-interact v0.1.0 (/opt/rustwide/workdir/wa-interact)
[INFO] [stderr]    Compiling wa-server v0.1.0 (/opt/rustwide/workdir/wa-server)
[INFO] [stdout] warning: use of deprecated function `utils::compare::compare`
[INFO] [stdout]  --> wa-server/src/threads/worker.rs:3:20
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::utils::{compare, mkfifo};
[INFO] [stdout]   |                    ^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `utils::compare::compare`
[INFO] [stdout]    --> wa-server/src/threads/worker.rs:233:23
[INFO] [stdout]     |
[INFO] [stdout] 233 |             let cmp = compare(ignore_trailing_space, &task.stdout_path, &task.userout_path)?;
[INFO] [stdout]     |                       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `utils::compare::compare`
[INFO] [stdout]  --> wa-server/src/utils/mod.rs:4:18
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub use compare::compare;
[INFO] [stdout]   |                  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> wa-server/src/types/mod.rs:46:13
[INFO] [stdout]    |
[INFO] [stdout] 46 |     Channel(&'static str),
[INFO] [stdout]    |     ------- ^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 46 |     Channel(()),
[INFO] [stdout]    |             ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]  --> wa-server/src/config.rs:6:10
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[derive(Deserialize)]
[INFO] [stdout]   |          ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_RedisConfig`
[INFO] [stdout]   = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]   = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]   = note: 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: `#[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, they should be avoided as they go against expectation
[INFO] [stdout]   --> wa-server/src/config.rs:19:10
[INFO] [stdout]    |
[INFO] [stdout] 19 | #[derive(Deserialize)]
[INFO] [stdout]    |          ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_Config`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: 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: 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: panic message is not a string literal
[INFO] [stdout]   --> wa-server/src/main.rs:17:24
[INFO] [stdout]    |
[INFO] [stdout] 17 |                 panic!(e)
[INFO] [stdout]    |                        ^
[INFO] [stdout]    |
[INFO] [stdout]   ::: wa-server/src/threads/listener.rs:17:13
[INFO] [stdout]    |
[INFO] [stdout] 17 |             handle!(self.redis.reload(), "redis error: {}");
[INFO] [stdout]    |             ----------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]    = note: `#[warn(non_fmt_panics)]` on by default
[INFO] [stdout]    = note: this warning originates in the macro `handle` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]    |
[INFO] [stdout] 17 |                 panic!("{}", e)
[INFO] [stdout]    |                        +++++
[INFO] [stdout] help: or use std::panic::panic_any instead
[INFO] [stdout]    |
[INFO] [stdout] 17 |                 std::panic::panic_any(e)
[INFO] [stdout]    |                 ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]   --> wa-server/src/main.rs:17:24
[INFO] [stdout]    |
[INFO] [stdout] 17 |                 panic!(e)
[INFO] [stdout]    |                        ^
[INFO] [stdout]    |
[INFO] [stdout]   ::: wa-server/src/threads/listener.rs:22:34
[INFO] [stdout]    |
[INFO] [stdout] 22 |                 let submission = handle!(self.redis.get_submission(), "redis error: {}");
[INFO] [stdout]    |                                  ------------------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]    = note: this warning originates in the macro `handle` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]    |
[INFO] [stdout] 17 |                 panic!("{}", e)
[INFO] [stdout]    |                        +++++
[INFO] [stdout] help: or use std::panic::panic_any instead
[INFO] [stdout]    |
[INFO] [stdout] 17 |                 std::panic::panic_any(e)
[INFO] [stdout]    |                 ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]   --> wa-server/src/main.rs:17:24
[INFO] [stdout]    |
[INFO] [stdout] 17 |                   panic!(e)
[INFO] [stdout]    |                          ^
[INFO] [stdout]    |
[INFO] [stdout]   ::: wa-server/src/threads/listener.rs:26:17
[INFO] [stdout]    |
[INFO] [stdout] 26 | /                 handle!(
[INFO] [stdout] 27 | |                     self.sync_data(submission.problem_id),
[INFO] [stdout] 28 | |                     "fail to sync data: {}"
[INFO] [stdout] 29 | |                 );
[INFO] [stdout]    | |_________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]    = note: this warning originates in the macro `handle` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]    |
[INFO] [stdout] 17 |                 panic!("{}", e)
[INFO] [stdout]    |                        +++++
[INFO] [stdout] help: or use std::panic::panic_any instead
[INFO] [stdout]    |
[INFO] [stdout] 17 |                 std::panic::panic_any(e)
[INFO] [stdout]    |                 ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]   --> wa-server/src/main.rs:17:24
[INFO] [stdout]    |
[INFO] [stdout] 17 |                   panic!(e)
[INFO] [stdout]    |                          ^
[INFO] [stdout]    |
[INFO] [stdout]   ::: wa-server/src/threads/listener.rs:31:17
[INFO] [stdout]    |
[INFO] [stdout] 31 | /                 handle!(
[INFO] [stdout] 32 | |                     self.update_sender
[INFO] [stdout] 33 | |                         .send(submission.update(JudgeStatus::Queuing)),
[INFO] [stdout] 34 | |                     "updater is disconnected: {}"
[INFO] [stdout] 35 | |                 );
[INFO] [stdout]    | |_________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]    = note: this warning originates in the macro `handle` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]    |
[INFO] [stdout] 17 |                 panic!("{}", e)
[INFO] [stdout]    |                        +++++
[INFO] [stdout] help: or use std::panic::panic_any instead
[INFO] [stdout]    |
[INFO] [stdout] 17 |                 std::panic::panic_any(e)
[INFO] [stdout]    |                 ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]   --> wa-server/src/main.rs:17:24
[INFO] [stdout]    |
[INFO] [stdout] 17 |                   panic!(e)
[INFO] [stdout]    |                          ^
[INFO] [stdout]    |
[INFO] [stdout]   ::: wa-server/src/threads/listener.rs:37:17
[INFO] [stdout]    |
[INFO] [stdout] 37 | /                 handle!(
[INFO] [stdout] 38 | |                     self.submission_sender.send(submission),
[INFO] [stdout] 39 | |                     "workers are disconnected: {}"
[INFO] [stdout] 40 | |                 );
[INFO] [stdout]    | |_________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]    = note: this warning originates in the macro `handle` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]    |
[INFO] [stdout] 17 |                 panic!("{}", e)
[INFO] [stdout]    |                        +++++
[INFO] [stdout] help: or use std::panic::panic_any instead
[INFO] [stdout]    |
[INFO] [stdout] 17 |                 std::panic::panic_any(e)
[INFO] [stdout]    |                 ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]   --> wa-server/src/main.rs:17:24
[INFO] [stdout]    |
[INFO] [stdout] 17 |                   panic!(e)
[INFO] [stdout]    |                          ^
[INFO] [stdout]    |
[INFO] [stdout]   ::: wa-server/src/threads/updater.rs:13:26
[INFO] [stdout]    |
[INFO] [stdout] 13 |               let update = handle!(
[INFO] [stdout]    |  __________________________-
[INFO] [stdout] 14 | |                 self.update_receiver.recv(),
[INFO] [stdout] 15 | |                 "update senders are disconnected: {}"
[INFO] [stdout] 16 | |             );
[INFO] [stdout]    | |_____________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]    = note: this warning originates in the macro `handle` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]    |
[INFO] [stdout] 17 |                 panic!("{}", e)
[INFO] [stdout]    |                        +++++
[INFO] [stdout] help: or use std::panic::panic_any instead
[INFO] [stdout]    |
[INFO] [stdout] 17 |                 std::panic::panic_any(e)
[INFO] [stdout]    |                 ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]   --> wa-server/src/main.rs:17:24
[INFO] [stdout]    |
[INFO] [stdout] 17 |                 panic!(e)
[INFO] [stdout]    |                        ^
[INFO] [stdout]    |
[INFO] [stdout]   ::: wa-server/src/threads/updater.rs:24:13
[INFO] [stdout]    |
[INFO] [stdout] 24 |             handle!(self.redis.update_submission(update), "redis error: {}");
[INFO] [stdout]    |             ---------------------------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]    = note: this warning originates in the macro `handle` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]    |
[INFO] [stdout] 17 |                 panic!("{}", e)
[INFO] [stdout]    |                        +++++
[INFO] [stdout] help: or use std::panic::panic_any instead
[INFO] [stdout]    |
[INFO] [stdout] 17 |                 std::panic::panic_any(e)
[INFO] [stdout]    |                 ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]   --> wa-server/src/main.rs:17:24
[INFO] [stdout]    |
[INFO] [stdout] 17 |                   panic!(e)
[INFO] [stdout]    |                          ^
[INFO] [stdout]    |
[INFO] [stdout]   ::: wa-server/src/threads/worker.rs:29:30
[INFO] [stdout]    |
[INFO] [stdout] 29 |               let submission = handle!(
[INFO] [stdout]    |  ______________________________-
[INFO] [stdout] 30 | |                 self.submission_receiver.recv(),
[INFO] [stdout] 31 | |                 "submission sender is disconnected: {}"
[INFO] [stdout] 32 | |             );
[INFO] [stdout]    | |_____________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]    = note: this warning originates in the macro `handle` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]    |
[INFO] [stdout] 17 |                 panic!("{}", e)
[INFO] [stdout]    |                        +++++
[INFO] [stdout] help: or use std::panic::panic_any instead
[INFO] [stdout]    |
[INFO] [stdout] 17 |                 std::panic::panic_any(e)
[INFO] [stdout]    |                 ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]   --> wa-server/src/main.rs:26:24
[INFO] [stdout]    |
[INFO] [stdout] 26 |                   panic!(e)
[INFO] [stdout]    |                          ^
[INFO] [stdout]    |
[INFO] [stdout]   ::: wa-server/src/threads/worker.rs:37:13
[INFO] [stdout]    |
[INFO] [stdout] 37 | /             handle!(@custom
[INFO] [stdout] 38 | |                 std::fs::create_dir_all(&working_dir),
[INFO] [stdout] 39 | |                 "can not create dir: {:?}",
[INFO] [stdout] 40 | |                 &working_dir,
[INFO] [stdout] 41 | |             );
[INFO] [stdout]    | |_____________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]    = note: this warning originates in the macro `handle` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]    |
[INFO] [stdout] 26 |                 panic!("{}", e)
[INFO] [stdout]    |                        +++++
[INFO] [stdout] help: or use std::panic::panic_any instead
[INFO] [stdout]    |
[INFO] [stdout] 26 |                 std::panic::panic_any(e)
[INFO] [stdout]    |                 ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]   --> wa-server/src/main.rs:26:24
[INFO] [stdout]    |
[INFO] [stdout] 26 |                   panic!(e)
[INFO] [stdout]    |                          ^
[INFO] [stdout]    |
[INFO] [stdout]   ::: wa-server/src/threads/worker.rs:63:17
[INFO] [stdout]    |
[INFO] [stdout] 63 | /                 handle!(@custom
[INFO] [stdout] 64 | |                     std::fs::remove_dir_all(&working_dir),
[INFO] [stdout] 65 | |                     "can not remove dir: {:?}",
[INFO] [stdout] 66 | |                     &working_dir,
[INFO] [stdout] 67 | |                 );
[INFO] [stdout]    | |_________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]    = note: this warning originates in the macro `handle` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]    |
[INFO] [stdout] 26 |                 panic!("{}", e)
[INFO] [stdout]    |                        +++++
[INFO] [stdout] help: or use std::panic::panic_any instead
[INFO] [stdout]    |
[INFO] [stdout] 26 |                 std::panic::panic_any(e)
[INFO] [stdout]    |                 ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> wa-server/src/main.rs:17:24
[INFO] [stdout]     |
[INFO] [stdout] 17  |                   panic!(e)
[INFO] [stdout]     |                          ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: wa-server/src/threads/worker.rs:245:9
[INFO] [stdout]     |
[INFO] [stdout] 245 | /         handle!(
[INFO] [stdout] 246 | |             self.update_sender.send(update),
[INFO] [stdout] 247 | |             "updater is disconnected: {}"
[INFO] [stdout] 248 | |         );
[INFO] [stdout]     | |_________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: this warning originates in the macro `handle` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]     |
[INFO] [stdout] 17  |                 panic!("{}", e)
[INFO] [stdout]     |                        +++++
[INFO] [stdout] help: or use std::panic::panic_any instead
[INFO] [stdout]     |
[INFO] [stdout] 17  |                 std::panic::panic_any(e)
[INFO] [stdout]     |                 ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]  --> wa-server/src/types/judge.rs:3:45
[INFO] [stdout]   |
[INFO] [stdout] 3 | #[derive(Debug, Clone, Copy, PartialEq, Eq, Serialize, Deserialize)]
[INFO] [stdout]   |                                             ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: move this `impl` block outside the of the current constant `_IMPL_SERIALIZE_FOR_JudgeType`
[INFO] [stdout]   = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]   = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]   = note: 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: 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, they should be avoided as they go against expectation
[INFO] [stdout]  --> wa-server/src/types/judge.rs:3:56
[INFO] [stdout]   |
[INFO] [stdout] 3 | #[derive(Debug, Clone, Copy, PartialEq, Eq, Serialize, Deserialize)]
[INFO] [stdout]   |                                                        ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_JudgeType`
[INFO] [stdout]   = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]   = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]   = note: 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: 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, they should be avoided as they go against expectation
[INFO] [stdout]   --> wa-server/src/types/judge.rs:11:10
[INFO] [stdout]    |
[INFO] [stdout] 11 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_SERIALIZE_FOR_Submission`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: 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: 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, they should be avoided as they go against expectation
[INFO] [stdout]   --> wa-server/src/types/judge.rs:11:21
[INFO] [stdout]    |
[INFO] [stdout] 11 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |                     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_Submission`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: 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: 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, they should be avoided as they go against expectation
[INFO] [stdout]   --> wa-server/src/types/judge.rs:23:45
[INFO] [stdout]    |
[INFO] [stdout] 23 | #[derive(Debug, Clone, Copy, PartialEq, Eq, Serialize, Deserialize)]
[INFO] [stdout]    |                                             ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_SERIALIZE_FOR_JudgeStatus`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: 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: 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, they should be avoided as they go against expectation
[INFO] [stdout]   --> wa-server/src/types/judge.rs:23:56
[INFO] [stdout]    |
[INFO] [stdout] 23 | #[derive(Debug, Clone, Copy, PartialEq, Eq, Serialize, Deserialize)]
[INFO] [stdout]    |                                                        ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_JudgeStatus`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: 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: 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, they should be avoided as they go against expectation
[INFO] [stdout]   --> wa-server/src/types/judge.rs:42:10
[INFO] [stdout]    |
[INFO] [stdout] 42 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_SERIALIZE_FOR_JudgeCaseResult`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: 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: 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, they should be avoided as they go against expectation
[INFO] [stdout]   --> wa-server/src/types/judge.rs:42:21
[INFO] [stdout]    |
[INFO] [stdout] 42 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |                     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_JudgeCaseResult`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: 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: 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, they should be avoided as they go against expectation
[INFO] [stdout]   --> wa-server/src/types/judge.rs:49:10
[INFO] [stdout]    |
[INFO] [stdout] 49 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_SERIALIZE_FOR_JudgeResult`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: 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: 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, they should be avoided as they go against expectation
[INFO] [stdout]   --> wa-server/src/types/judge.rs:49:21
[INFO] [stdout]    |
[INFO] [stdout] 49 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |                     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_JudgeResult`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: 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: 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, they should be avoided as they go against expectation
[INFO] [stdout]   --> wa-server/src/types/judge.rs:57:10
[INFO] [stdout]    |
[INFO] [stdout] 57 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_SERIALIZE_FOR_Update`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: 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: 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, they should be avoided as they go against expectation
[INFO] [stdout]   --> wa-server/src/types/judge.rs:57:21
[INFO] [stdout]    |
[INFO] [stdout] 57 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |                     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_Update`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: 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: 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, they should be avoided as they go against expectation
[INFO] [stdout]  --> wa-server/src/types/lang.rs:3:51
[INFO] [stdout]   |
[INFO] [stdout] 3 | #[derive(Debug, Clone, Copy, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stdout]   |                                                   ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: move this `impl` block outside the of the current constant `_IMPL_SERIALIZE_FOR_Language`
[INFO] [stdout]   = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]   = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]   = note: 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: 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, they should be avoided as they go against expectation
[INFO] [stdout]  --> wa-server/src/types/lang.rs:3:62
[INFO] [stdout]   |
[INFO] [stdout] 3 | #[derive(Debug, Clone, Copy, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stdout]   |                                                              ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_Language`
[INFO] [stdout]   = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]   = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]   = note: 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: 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, they should be avoided as they go against expectation
[INFO] [stdout]   --> wa-server/src/types/sandbox.rs:14:10
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive(Deserialize)]
[INFO] [stdout]    |          ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_Limit`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: 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: 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: 32 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 20.57s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: redis v0.13.0
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 1`
[INFO] running `Command { std: "docker" "inspect" "9dc9ee099917da9c4d44679e8f6af750ca11fee25c400d2552f167e6660b160f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "9dc9ee099917da9c4d44679e8f6af750ca11fee25c400d2552f167e6660b160f", kill_on_drop: false }`
[INFO] [stdout] 9dc9ee099917da9c4d44679e8f6af750ca11fee25c400d2552f167e6660b160f
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+b642703cf9526da1e72c0b6755753b939a9c6b6d" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] ed866f4ca062e44262636c8ef8ceceb7ca4495dee6cec180a727fa64ade31854
[INFO] running `Command { std: "docker" "start" "-a" "ed866f4ca062e44262636c8ef8ceceb7ca4495dee6cec180a727fa64ade31854", kill_on_drop: false }`
[INFO] [stdout] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]  --> wa-monitor/src/types.rs:6:24
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[derive(Debug, Error, FromPrimitive, ToPrimitive)]
[INFO] [stdout]   |                        ^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: move this `impl` block outside the of the current constant `_IMPL_NUM_FromPrimitive_FOR_MonitorErrorKind`
[INFO] [stdout]   = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]   = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]   = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stdout]   = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stdout]   = note: this warning originates in the derive macro `FromPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]  --> wa-monitor/src/types.rs:6:39
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[derive(Debug, Error, FromPrimitive, ToPrimitive)]
[INFO] [stdout]   |                                       ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: move this `impl` block outside the of the current constant `_IMPL_NUM_ToPrimitive_FOR_MonitorErrorKind`
[INFO] [stdout]   = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]   = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]   = note: the derive macro `ToPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stdout]   = note: this warning originates in the derive macro `ToPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]   --> wa-monitor/src/types.rs:32:17
[INFO] [stdout]    |
[INFO] [stdout] 32 | #[derive(Debug, Serialize, Deserialize)]
[INFO] [stdout]    |                 ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_SERIALIZE_FOR_TargetStatus`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: 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: 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, they should be avoided as they go against expectation
[INFO] [stdout]   --> wa-monitor/src/types.rs:32:28
[INFO] [stdout]    |
[INFO] [stdout] 32 | #[derive(Debug, Serialize, Deserialize)]
[INFO] [stdout]    |                            ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_TargetStatus`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: 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: 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: 4 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling wa-compare v0.1.0 (/opt/rustwide/workdir/wa-compare)
[INFO] [stderr]    Compiling wa-monitor v0.1.0 (/opt/rustwide/workdir/wa-monitor)
[INFO] [stderr]    Compiling wa-interact v0.1.0 (/opt/rustwide/workdir/wa-interact)
[INFO] [stderr]    Compiling wa-server v0.1.0 (/opt/rustwide/workdir/wa-server)
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]   --> wa-compare/src/main.rs:56:32
[INFO] [stdout]    |
[INFO] [stdout] 56 |                 None => panic!(e),
[INFO] [stdout]    |                                ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]    = note: `#[warn(non_fmt_panics)]` on by default
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]    |
[INFO] [stdout] 56 |                 None => panic!("{}", e),
[INFO] [stdout]    |                                +++++
[INFO] [stdout] help: or use std::panic::panic_any instead
[INFO] [stdout]    |
[INFO] [stdout] 56 |                 None => std::panic::panic_any(e),
[INFO] [stdout]    |                         ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `utils::compare::compare`
[INFO] [stdout]  --> wa-server/src/threads/worker.rs:3:20
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::utils::{compare, mkfifo};
[INFO] [stdout]   |                    ^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `utils::compare::compare`
[INFO] [stdout]    --> wa-server/src/threads/worker.rs:233:23
[INFO] [stdout]     |
[INFO] [stdout] 233 |             let cmp = compare(ignore_trailing_space, &task.stdout_path, &task.userout_path)?;
[INFO] [stdout]     |                       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `utils::compare::compare`
[INFO] [stdout]  --> wa-server/src/utils/mod.rs:4:18
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub use compare::compare;
[INFO] [stdout]   |                  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]  --> wa-monitor/src/types.rs:6:24
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[derive(Debug, Error, FromPrimitive, ToPrimitive)]
[INFO] [stdout]   |                        ^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: move this `impl` block outside the of the current constant `_IMPL_NUM_FromPrimitive_FOR_MonitorErrorKind`
[INFO] [stdout]   = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]   = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]   = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stdout]   = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stdout]   = note: this warning originates in the derive macro `FromPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]  --> wa-monitor/src/types.rs:6:39
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[derive(Debug, Error, FromPrimitive, ToPrimitive)]
[INFO] [stdout]   |                                       ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: move this `impl` block outside the of the current constant `_IMPL_NUM_ToPrimitive_FOR_MonitorErrorKind`
[INFO] [stdout]   = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]   = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]   = note: the derive macro `ToPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stdout]   = note: this warning originates in the derive macro `ToPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]   --> wa-monitor/src/types.rs:32:17
[INFO] [stdout]    |
[INFO] [stdout] 32 | #[derive(Debug, Serialize, Deserialize)]
[INFO] [stdout]    |                 ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_SERIALIZE_FOR_TargetStatus`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: 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: 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, they should be avoided as they go against expectation
[INFO] [stdout]   --> wa-monitor/src/types.rs:32:28
[INFO] [stdout]    |
[INFO] [stdout] 32 | #[derive(Debug, Serialize, Deserialize)]
[INFO] [stdout]    |                            ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_TargetStatus`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: 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: 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: 1 warning emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> wa-server/src/types/mod.rs:46:13
[INFO] [stdout]    |
[INFO] [stdout] 46 |     Channel(&'static str),
[INFO] [stdout]    |     ------- ^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 46 |     Channel(()),
[INFO] [stdout]    |             ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]  --> wa-server/src/config.rs:6:10
[INFO] [stdout]   |
[INFO] [stdout] 6 | #[derive(Deserialize)]
[INFO] [stdout]   |          ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_RedisConfig`
[INFO] [stdout]   = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]   = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]   = note: 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: `#[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, they should be avoided as they go against expectation
[INFO] [stdout]   --> wa-server/src/config.rs:19:10
[INFO] [stdout]    |
[INFO] [stdout] 19 | #[derive(Deserialize)]
[INFO] [stdout]    |          ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_Config`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: 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: 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: 4 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]   --> wa-server/src/main.rs:17:24
[INFO] [stdout]    |
[INFO] [stdout] 17 |                 panic!(e)
[INFO] [stdout]    |                        ^
[INFO] [stdout]    |
[INFO] [stdout]   ::: wa-server/src/threads/listener.rs:17:13
[INFO] [stdout]    |
[INFO] [stdout] 17 |             handle!(self.redis.reload(), "redis error: {}");
[INFO] [stdout]    |             ----------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]    = note: `#[warn(non_fmt_panics)]` on by default
[INFO] [stdout]    = note: this warning originates in the macro `handle` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]    |
[INFO] [stdout] 17 |                 panic!("{}", e)
[INFO] [stdout]    |                        +++++
[INFO] [stdout] help: or use std::panic::panic_any instead
[INFO] [stdout]    |
[INFO] [stdout] 17 |                 std::panic::panic_any(e)
[INFO] [stdout]    |                 ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]   --> wa-server/src/main.rs:17:24
[INFO] [stdout]    |
[INFO] [stdout] 17 |                 panic!(e)
[INFO] [stdout]    |                        ^
[INFO] [stdout]    |
[INFO] [stdout]   ::: wa-server/src/threads/listener.rs:22:34
[INFO] [stdout]    |
[INFO] [stdout] 22 |                 let submission = handle!(self.redis.get_submission(), "redis error: {}");
[INFO] [stdout]    |                                  ------------------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]    = note: this warning originates in the macro `handle` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]    |
[INFO] [stdout] 17 |                 panic!("{}", e)
[INFO] [stdout]    |                        +++++
[INFO] [stdout] help: or use std::panic::panic_any instead
[INFO] [stdout]    |
[INFO] [stdout] 17 |                 std::panic::panic_any(e)
[INFO] [stdout]    |                 ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]   --> wa-server/src/main.rs:17:24
[INFO] [stdout]    |
[INFO] [stdout] 17 |                   panic!(e)
[INFO] [stdout]    |                          ^
[INFO] [stdout]    |
[INFO] [stdout]   ::: wa-server/src/threads/listener.rs:26:17
[INFO] [stdout]    |
[INFO] [stdout] 26 | /                 handle!(
[INFO] [stdout] 27 | |                     self.sync_data(submission.problem_id),
[INFO] [stdout] 28 | |                     "fail to sync data: {}"
[INFO] [stdout] 29 | |                 );
[INFO] [stdout]    | |_________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]    = note: this warning originates in the macro `handle` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]    |
[INFO] [stdout] 17 |                 panic!("{}", e)
[INFO] [stdout]    |                        +++++
[INFO] [stdout] help: or use std::panic::panic_any instead
[INFO] [stdout]    |
[INFO] [stdout] 17 |                 std::panic::panic_any(e)
[INFO] [stdout]    |                 ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]   --> wa-server/src/main.rs:17:24
[INFO] [stdout]    |
[INFO] [stdout] 17 |                   panic!(e)
[INFO] [stdout]    |                          ^
[INFO] [stdout]    |
[INFO] [stdout]   ::: wa-server/src/threads/listener.rs:31:17
[INFO] [stdout]    |
[INFO] [stdout] 31 | /                 handle!(
[INFO] [stdout] 32 | |                     self.update_sender
[INFO] [stdout] 33 | |                         .send(submission.update(JudgeStatus::Queuing)),
[INFO] [stdout] 34 | |                     "updater is disconnected: {}"
[INFO] [stdout] 35 | |                 );
[INFO] [stdout]    | |_________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]    = note: this warning originates in the macro `handle` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]    |
[INFO] [stdout] 17 |                 panic!("{}", e)
[INFO] [stdout]    |                        +++++
[INFO] [stdout] help: or use std::panic::panic_any instead
[INFO] [stdout]    |
[INFO] [stdout] 17 |                 std::panic::panic_any(e)
[INFO] [stdout]    |                 ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]   --> wa-server/src/main.rs:17:24
[INFO] [stdout]    |
[INFO] [stdout] 17 |                   panic!(e)
[INFO] [stdout]    |                          ^
[INFO] [stdout]    |
[INFO] [stdout]   ::: wa-server/src/threads/listener.rs:37:17
[INFO] [stdout]    |
[INFO] [stdout] 37 | /                 handle!(
[INFO] [stdout] 38 | |                     self.submission_sender.send(submission),
[INFO] [stdout] 39 | |                     "workers are disconnected: {}"
[INFO] [stdout] 40 | |                 );
[INFO] [stdout]    | |_________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]    = note: this warning originates in the macro `handle` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]    |
[INFO] [stdout] 17 |                 panic!("{}", e)
[INFO] [stdout]    |                        +++++
[INFO] [stdout] help: or use std::panic::panic_any instead
[INFO] [stdout]    |
[INFO] [stdout] 17 |                 std::panic::panic_any(e)
[INFO] [stdout]    |                 ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]   --> wa-server/src/main.rs:17:24
[INFO] [stdout]    |
[INFO] [stdout] 17 |                   panic!(e)
[INFO] [stdout]    |                          ^
[INFO] [stdout]    |
[INFO] [stdout]   ::: wa-server/src/threads/updater.rs:13:26
[INFO] [stdout]    |
[INFO] [stdout] 13 |               let update = handle!(
[INFO] [stdout]    |  __________________________-
[INFO] [stdout] 14 | |                 self.update_receiver.recv(),
[INFO] [stdout] 15 | |                 "update senders are disconnected: {}"
[INFO] [stdout] 16 | |             );
[INFO] [stdout]    | |_____________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]    = note: this warning originates in the macro `handle` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]    |
[INFO] [stdout] 17 |                 panic!("{}", e)
[INFO] [stdout]    |                        +++++
[INFO] [stdout] help: or use std::panic::panic_any instead
[INFO] [stdout]    |
[INFO] [stdout] 17 |                 std::panic::panic_any(e)
[INFO] [stdout]    |                 ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]   --> wa-server/src/main.rs:17:24
[INFO] [stdout]    |
[INFO] [stdout] 17 |                 panic!(e)
[INFO] [stdout]    |                        ^
[INFO] [stdout]    |
[INFO] [stdout]   ::: wa-server/src/threads/updater.rs:24:13
[INFO] [stdout]    |
[INFO] [stdout] 24 |             handle!(self.redis.update_submission(update), "redis error: {}");
[INFO] [stdout]    |             ---------------------------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]    = note: this warning originates in the macro `handle` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]    |
[INFO] [stdout] 17 |                 panic!("{}", e)
[INFO] [stdout]    |                        +++++
[INFO] [stdout] help: or use std::panic::panic_any instead
[INFO] [stdout]    |
[INFO] [stdout] 17 |                 std::panic::panic_any(e)
[INFO] [stdout]    |                 ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]   --> wa-server/src/main.rs:17:24
[INFO] [stdout]    |
[INFO] [stdout] 17 |                   panic!(e)
[INFO] [stdout]    |                          ^
[INFO] [stdout]    |
[INFO] [stdout]   ::: wa-server/src/threads/worker.rs:29:30
[INFO] [stdout]    |
[INFO] [stdout] 29 |               let submission = handle!(
[INFO] [stdout]    |  ______________________________-
[INFO] [stdout] 30 | |                 self.submission_receiver.recv(),
[INFO] [stdout] 31 | |                 "submission sender is disconnected: {}"
[INFO] [stdout] 32 | |             );
[INFO] [stdout]    | |_____________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]    = note: this warning originates in the macro `handle` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]    |
[INFO] [stdout] 17 |                 panic!("{}", e)
[INFO] [stdout]    |                        +++++
[INFO] [stdout] help: or use std::panic::panic_any instead
[INFO] [stdout]    |
[INFO] [stdout] 17 |                 std::panic::panic_any(e)
[INFO] [stdout]    |                 ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]   --> wa-server/src/main.rs:26:24
[INFO] [stdout]    |
[INFO] [stdout] 26 |                   panic!(e)
[INFO] [stdout]    |                          ^
[INFO] [stdout]    |
[INFO] [stdout]   ::: wa-server/src/threads/worker.rs:37:13
[INFO] [stdout]    |
[INFO] [stdout] 37 | /             handle!(@custom
[INFO] [stdout] 38 | |                 std::fs::create_dir_all(&working_dir),
[INFO] [stdout] 39 | |                 "can not create dir: {:?}",
[INFO] [stdout] 40 | |                 &working_dir,
[INFO] [stdout] 41 | |             );
[INFO] [stdout]    | |_____________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]    = note: this warning originates in the macro `handle` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]    |
[INFO] [stdout] 26 |                 panic!("{}", e)
[INFO] [stdout]    |                        +++++
[INFO] [stdout] help: or use std::panic::panic_any instead
[INFO] [stdout]    |
[INFO] [stdout] 26 |                 std::panic::panic_any(e)
[INFO] [stdout]    |                 ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]   --> wa-server/src/main.rs:26:24
[INFO] [stdout]    |
[INFO] [stdout] 26 |                   panic!(e)
[INFO] [stdout]    |                          ^
[INFO] [stdout]    |
[INFO] [stdout]   ::: wa-server/src/threads/worker.rs:63:17
[INFO] [stdout]    |
[INFO] [stdout] 63 | /                 handle!(@custom
[INFO] [stdout] 64 | |                     std::fs::remove_dir_all(&working_dir),
[INFO] [stdout] 65 | |                     "can not remove dir: {:?}",
[INFO] [stdout] 66 | |                     &working_dir,
[INFO] [stdout] 67 | |                 );
[INFO] [stdout]    | |_________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]    = note: this warning originates in the macro `handle` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]    |
[INFO] [stdout] 26 |                 panic!("{}", e)
[INFO] [stdout]    |                        +++++
[INFO] [stdout] help: or use std::panic::panic_any instead
[INFO] [stdout]    |
[INFO] [stdout] 26 |                 std::panic::panic_any(e)
[INFO] [stdout]    |                 ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> wa-server/src/main.rs:17:24
[INFO] [stdout]     |
[INFO] [stdout] 17  |                   panic!(e)
[INFO] [stdout]     |                          ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: wa-server/src/threads/worker.rs:245:9
[INFO] [stdout]     |
[INFO] [stdout] 245 | /         handle!(
[INFO] [stdout] 246 | |             self.update_sender.send(update),
[INFO] [stdout] 247 | |             "updater is disconnected: {}"
[INFO] [stdout] 248 | |         );
[INFO] [stdout]     | |_________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: this warning originates in the macro `handle` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]     |
[INFO] [stdout] 17  |                 panic!("{}", e)
[INFO] [stdout]     |                        +++++
[INFO] [stdout] help: or use std::panic::panic_any instead
[INFO] [stdout]     |
[INFO] [stdout] 17  |                 std::panic::panic_any(e)
[INFO] [stdout]     |                 ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]  --> wa-server/src/types/judge.rs:3:45
[INFO] [stdout]   |
[INFO] [stdout] 3 | #[derive(Debug, Clone, Copy, PartialEq, Eq, Serialize, Deserialize)]
[INFO] [stdout]   |                                             ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: move this `impl` block outside the of the current constant `_IMPL_SERIALIZE_FOR_JudgeType`
[INFO] [stdout]   = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]   = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]   = note: 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: 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, they should be avoided as they go against expectation
[INFO] [stdout]  --> wa-server/src/types/judge.rs:3:56
[INFO] [stdout]   |
[INFO] [stdout] 3 | #[derive(Debug, Clone, Copy, PartialEq, Eq, Serialize, Deserialize)]
[INFO] [stdout]   |                                                        ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_JudgeType`
[INFO] [stdout]   = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]   = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]   = note: 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: 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, they should be avoided as they go against expectation
[INFO] [stdout]   --> wa-server/src/types/judge.rs:11:10
[INFO] [stdout]    |
[INFO] [stdout] 11 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_SERIALIZE_FOR_Submission`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: 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: 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, they should be avoided as they go against expectation
[INFO] [stdout]   --> wa-server/src/types/judge.rs:11:21
[INFO] [stdout]    |
[INFO] [stdout] 11 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |                     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_Submission`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: 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: 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, they should be avoided as they go against expectation
[INFO] [stdout]   --> wa-server/src/types/judge.rs:23:45
[INFO] [stdout]    |
[INFO] [stdout] 23 | #[derive(Debug, Clone, Copy, PartialEq, Eq, Serialize, Deserialize)]
[INFO] [stdout]    |                                             ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_SERIALIZE_FOR_JudgeStatus`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: 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: 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, they should be avoided as they go against expectation
[INFO] [stdout]   --> wa-server/src/types/judge.rs:23:56
[INFO] [stdout]    |
[INFO] [stdout] 23 | #[derive(Debug, Clone, Copy, PartialEq, Eq, Serialize, Deserialize)]
[INFO] [stdout]    |                                                        ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_JudgeStatus`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: 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: 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, they should be avoided as they go against expectation
[INFO] [stdout]   --> wa-server/src/types/judge.rs:42:10
[INFO] [stdout]    |
[INFO] [stdout] 42 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_SERIALIZE_FOR_JudgeCaseResult`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: 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: 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, they should be avoided as they go against expectation
[INFO] [stdout]   --> wa-server/src/types/judge.rs:42:21
[INFO] [stdout]    |
[INFO] [stdout] 42 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |                     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_JudgeCaseResult`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: 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: 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, they should be avoided as they go against expectation
[INFO] [stdout]   --> wa-server/src/types/judge.rs:49:10
[INFO] [stdout]    |
[INFO] [stdout] 49 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_SERIALIZE_FOR_JudgeResult`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: 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: 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, they should be avoided as they go against expectation
[INFO] [stdout]   --> wa-server/src/types/judge.rs:49:21
[INFO] [stdout]    |
[INFO] [stdout] 49 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |                     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_JudgeResult`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: 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: 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, they should be avoided as they go against expectation
[INFO] [stdout]   --> wa-server/src/types/judge.rs:57:10
[INFO] [stdout]    |
[INFO] [stdout] 57 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_SERIALIZE_FOR_Update`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: 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: 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, they should be avoided as they go against expectation
[INFO] [stdout]   --> wa-server/src/types/judge.rs:57:21
[INFO] [stdout]    |
[INFO] [stdout] 57 | #[derive(Serialize, Deserialize)]
[INFO] [stdout]    |                     ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_Update`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: 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: 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, they should be avoided as they go against expectation
[INFO] [stdout]  --> wa-server/src/types/lang.rs:3:51
[INFO] [stdout]   |
[INFO] [stdout] 3 | #[derive(Debug, Clone, Copy, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stdout]   |                                                   ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: move this `impl` block outside the of the current constant `_IMPL_SERIALIZE_FOR_Language`
[INFO] [stdout]   = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]   = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]   = note: 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: 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, they should be avoided as they go against expectation
[INFO] [stdout]  --> wa-server/src/types/lang.rs:3:62
[INFO] [stdout]   |
[INFO] [stdout] 3 | #[derive(Debug, Clone, Copy, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stdout]   |                                                              ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_Language`
[INFO] [stdout]   = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]   = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]   = note: 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: 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, they should be avoided as they go against expectation
[INFO] [stdout]   --> wa-server/src/types/sandbox.rs:14:10
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive(Deserialize)]
[INFO] [stdout]    |          ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_Limit`
[INFO] [stdout]    = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]    = note: 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: 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: 32 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 1.33s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: redis v0.13.0
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 1`
[INFO] running `Command { std: "docker" "inspect" "ed866f4ca062e44262636c8ef8ceceb7ca4495dee6cec180a727fa64ade31854", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ed866f4ca062e44262636c8ef8ceceb7ca4495dee6cec180a727fa64ade31854", kill_on_drop: false }`
[INFO] [stdout] ed866f4ca062e44262636c8ef8ceceb7ca4495dee6cec180a727fa64ade31854
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+b642703cf9526da1e72c0b6755753b939a9c6b6d" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] e4db33fe502efe61d5dab56e8cbb94841ad9b8bdc71582332c31d092ea2934a4
[INFO] running `Command { std: "docker" "start" "-a" "e4db33fe502efe61d5dab56e8cbb94841ad9b8bdc71582332c31d092ea2934a4", kill_on_drop: false }`
[INFO] [stderr] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stderr]  --> wa-monitor/src/types.rs:6:24
[INFO] [stderr]   |
[INFO] [stderr] 6 | #[derive(Debug, Error, FromPrimitive, ToPrimitive)]
[INFO] [stderr]   |                        ^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = help: move this `impl` block outside the of the current constant `_IMPL_NUM_FromPrimitive_FOR_MonitorErrorKind`
[INFO] [stderr]   = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]   = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stderr]   = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stderr]   = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stderr]   = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stderr]   = note: this warning originates in the derive macro `FromPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stderr]  --> wa-monitor/src/types.rs:6:39
[INFO] [stderr]   |
[INFO] [stderr] 6 | #[derive(Debug, Error, FromPrimitive, ToPrimitive)]
[INFO] [stderr]   |                                       ^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = help: move this `impl` block outside the of the current constant `_IMPL_NUM_ToPrimitive_FOR_MonitorErrorKind`
[INFO] [stderr]   = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]   = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stderr]   = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stderr]   = note: the derive macro `ToPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stderr]   = note: this warning originates in the derive macro `ToPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stderr]   --> wa-monitor/src/types.rs:32:17
[INFO] [stderr]    |
[INFO] [stderr] 32 | #[derive(Debug, Serialize, Deserialize)]
[INFO] [stderr]    |                 ^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = help: move this `impl` block outside the of the current constant `_IMPL_SERIALIZE_FOR_TargetStatus`
[INFO] [stderr]    = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]    = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stderr]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stderr]   --> wa-monitor/src/types.rs:32:28
[INFO] [stderr]    |
[INFO] [stderr] 32 | #[derive(Debug, Serialize, Deserialize)]
[INFO] [stderr]    |                            ^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_TargetStatus`
[INFO] [stderr]    = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]    = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stderr]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: `wa-monitor` (lib) generated 4 warnings
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stderr]   --> wa-compare/src/main.rs:56:32
[INFO] [stderr]    |
[INFO] [stderr] 56 |                 None => panic!(e),
[INFO] [stderr]    |                                ^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr]    = note: `#[warn(non_fmt_panics)]` on by default
[INFO] [stderr] help: add a "{}" format string to `Display` the message
[INFO] [stderr]    |
[INFO] [stderr] 56 |                 None => panic!("{}", e),
[INFO] [stderr]    |                                +++++
[INFO] [stderr] help: or use std::panic::panic_any instead
[INFO] [stderr]    |
[INFO] [stderr] 56 |                 None => std::panic::panic_any(e),
[INFO] [stderr]    |                         ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stderr] 
[INFO] [stderr] warning: `wa-compare` (bin "wa-compare" test) generated 1 warning (run `cargo fix --bin "wa-compare" --tests` to apply 1 suggestion)
[INFO] [stderr] warning: `wa-monitor` (lib test) generated 4 warnings (4 duplicates)
[INFO] [stderr] warning: use of deprecated function `utils::compare::compare`
[INFO] [stderr]  --> wa-server/src/threads/worker.rs:3:20
[INFO] [stderr]   |
[INFO] [stderr] 3 | use crate::utils::{compare, mkfifo};
[INFO] [stderr]   |                    ^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(deprecated)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated function `utils::compare::compare`
[INFO] [stderr]    --> wa-server/src/threads/worker.rs:233:23
[INFO] [stderr]     |
[INFO] [stderr] 233 |             let cmp = compare(ignore_trailing_space, &task.stdout_path, &task.userout_path)?;
[INFO] [stderr]     |                       ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated function `utils::compare::compare`
[INFO] [stderr]  --> wa-server/src/utils/mod.rs:4:18
[INFO] [stderr]   |
[INFO] [stderr] 4 | pub use compare::compare;
[INFO] [stderr]   |                  ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `0` is never read
[INFO] [stderr]   --> wa-server/src/types/mod.rs:46:13
[INFO] [stderr]    |
[INFO] [stderr] 46 |     Channel(&'static str),
[INFO] [stderr]    |     ------- ^^^^^^^^^^^^
[INFO] [stderr]    |     |
[INFO] [stderr]    |     field in this variant
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` on by default
[INFO] [stderr] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stderr]    |
[INFO] [stderr] 46 |     Channel(()),
[INFO] [stderr]    |             ~~
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stderr]  --> wa-server/src/config.rs:6:10
[INFO] [stderr]   |
[INFO] [stderr] 6 | #[derive(Deserialize)]
[INFO] [stderr]   |          ^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_RedisConfig`
[INFO] [stderr]   = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]   = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stderr]   = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stderr]   = 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] [stderr]   = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stderr]   = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stderr]   --> wa-server/src/config.rs:19:10
[INFO] [stderr]    |
[INFO] [stderr] 19 | #[derive(Deserialize)]
[INFO] [stderr]    |          ^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_Config`
[INFO] [stderr]    = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]    = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stderr]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stderr]   --> wa-server/src/main.rs:17:24
[INFO] [stderr]    |
[INFO] [stderr] 17 |                 panic!(e)
[INFO] [stderr]    |                        ^
[INFO] [stderr]    |
[INFO] [stderr]   ::: wa-server/src/threads/listener.rs:17:13
[INFO] [stderr]    |
[INFO] [stderr] 17 |             handle!(self.redis.reload(), "redis error: {}");
[INFO] [stderr]    |             ----------------------------------------------- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr]    = note: `#[warn(non_fmt_panics)]` on by default
[INFO] [stderr]    = note: this warning originates in the macro `handle` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] help: add a "{}" format string to `Display` the message
[INFO] [stderr]    |
[INFO] [stderr] 17 |                 panic!("{}", e)
[INFO] [stderr]    |                        +++++
[INFO] [stderr] help: or use std::panic::panic_any instead
[INFO] [stderr]    |
[INFO] [stderr] 17 |                 std::panic::panic_any(e)
[INFO] [stderr]    |                 ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stderr] 
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stderr]   --> wa-server/src/main.rs:17:24
[INFO] [stderr]    |
[INFO] [stderr] 17 |                 panic!(e)
[INFO] [stderr]    |                        ^
[INFO] [stderr]    |
[INFO] [stderr]   ::: wa-server/src/threads/listener.rs:22:34
[INFO] [stderr]    |
[INFO] [stderr] 22 |                 let submission = handle!(self.redis.get_submission(), "redis error: {}");
[INFO] [stderr]    |                                  ------------------------------------------------------- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr]    = note: this warning originates in the macro `handle` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] help: add a "{}" format string to `Display` the message
[INFO] [stderr]    |
[INFO] [stderr] 17 |                 panic!("{}", e)
[INFO] [stderr]    |                        +++++
[INFO] [stderr] help: or use std::panic::panic_any instead
[INFO] [stderr]    |
[INFO] [stderr] 17 |                 std::panic::panic_any(e)
[INFO] [stderr]    |                 ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stderr] 
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stderr]   --> wa-server/src/main.rs:17:24
[INFO] [stderr]    |
[INFO] [stderr] 17 |                   panic!(e)
[INFO] [stderr]    |                          ^
[INFO] [stderr]    |
[INFO] [stderr]   ::: wa-server/src/threads/listener.rs:26:17
[INFO] [stderr]    |
[INFO] [stderr] 26 | /                 handle!(
[INFO] [stderr] 27 | |                     self.sync_data(submission.problem_id),
[INFO] [stderr] 28 | |                     "fail to sync data: {}"
[INFO] [stderr] 29 | |                 );
[INFO] [stderr]    | |_________________- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr]    = note: this warning originates in the macro `handle` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] help: add a "{}" format string to `Display` the message
[INFO] [stderr]    |
[INFO] [stderr] 17 |                 panic!("{}", e)
[INFO] [stderr]    |                        +++++
[INFO] [stderr] help: or use std::panic::panic_any instead
[INFO] [stderr]    |
[INFO] [stderr] 17 |                 std::panic::panic_any(e)
[INFO] [stderr]    |                 ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stderr] 
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stderr]   --> wa-server/src/main.rs:17:24
[INFO] [stderr]    |
[INFO] [stderr] 17 |                   panic!(e)
[INFO] [stderr]    |                          ^
[INFO] [stderr]    |
[INFO] [stderr]   ::: wa-server/src/threads/listener.rs:31:17
[INFO] [stderr]    |
[INFO] [stderr] 31 | /                 handle!(
[INFO] [stderr] 32 | |                     self.update_sender
[INFO] [stderr] 33 | |                         .send(submission.update(JudgeStatus::Queuing)),
[INFO] [stderr] 34 | |                     "updater is disconnected: {}"
[INFO] [stderr] 35 | |                 );
[INFO] [stderr]    | |_________________- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr]    = note: this warning originates in the macro `handle` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] help: add a "{}" format string to `Display` the message
[INFO] [stderr]    |
[INFO] [stderr] 17 |                 panic!("{}", e)
[INFO] [stderr]    |                        +++++
[INFO] [stderr] help: or use std::panic::panic_any instead
[INFO] [stderr]    |
[INFO] [stderr] 17 |                 std::panic::panic_any(e)
[INFO] [stderr]    |                 ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stderr] 
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stderr]   --> wa-server/src/main.rs:17:24
[INFO] [stderr]    |
[INFO] [stderr] 17 |                   panic!(e)
[INFO] [stderr]    |                          ^
[INFO] [stderr]    |
[INFO] [stderr]   ::: wa-server/src/threads/listener.rs:37:17
[INFO] [stderr]    |
[INFO] [stderr] 37 | /                 handle!(
[INFO] [stderr] 38 | |                     self.submission_sender.send(submission),
[INFO] [stderr] 39 | |                     "workers are disconnected: {}"
[INFO] [stderr] 40 | |                 );
[INFO] [stderr]    | |_________________- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr]    = note: this warning originates in the macro `handle` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] help: add a "{}" format string to `Display` the message
[INFO] [stderr]    |
[INFO] [stderr] 17 |                 panic!("{}", e)
[INFO] [stderr]    |                        +++++
[INFO] [stderr] help: or use std::panic::panic_any instead
[INFO] [stderr]    |
[INFO] [stderr] 17 |                 std::panic::panic_any(e)
[INFO] [stderr]    |                 ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stderr] 
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stderr]   --> wa-server/src/main.rs:17:24
[INFO] [stderr]    |
[INFO] [stderr] 17 |                   panic!(e)
[INFO] [stderr]    |                          ^
[INFO] [stderr]    |
[INFO] [stderr]   ::: wa-server/src/threads/updater.rs:13:26
[INFO] [stderr]    |
[INFO] [stderr] 13 |               let update = handle!(
[INFO] [stderr]    |  __________________________-
[INFO] [stderr] 14 | |                 self.update_receiver.recv(),
[INFO] [stderr] 15 | |                 "update senders are disconnected: {}"
[INFO] [stderr] 16 | |             );
[INFO] [stderr]    | |_____________- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr]    = note: this warning originates in the macro `handle` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] help: add a "{}" format string to `Display` the message
[INFO] [stderr]    |
[INFO] [stderr] 17 |                 panic!("{}", e)
[INFO] [stderr]    |                        +++++
[INFO] [stderr] help: or use std::panic::panic_any instead
[INFO] [stderr]    |
[INFO] [stderr] 17 |                 std::panic::panic_any(e)
[INFO] [stderr]    |                 ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stderr] 
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stderr]   --> wa-server/src/main.rs:17:24
[INFO] [stderr]    |
[INFO] [stderr] 17 |                 panic!(e)
[INFO] [stderr]    |                        ^
[INFO] [stderr]    |
[INFO] [stderr]   ::: wa-server/src/threads/updater.rs:24:13
[INFO] [stderr]    |
[INFO] [stderr] 24 |             handle!(self.redis.update_submission(update), "redis error: {}");
[INFO] [stderr]    |             ---------------------------------------------------------------- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr]    = note: this warning originates in the macro `handle` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] help: add a "{}" format string to `Display` the message
[INFO] [stderr]    |
[INFO] [stderr] 17 |                 panic!("{}", e)
[INFO] [stderr]    |                        +++++
[INFO] [stderr] help: or use std::panic::panic_any instead
[INFO] [stderr]    |
[INFO] [stderr] 17 |                 std::panic::panic_any(e)
[INFO] [stderr]    |                 ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stderr] 
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stderr]   --> wa-server/src/main.rs:17:24
[INFO] [stderr]    |
[INFO] [stderr] 17 |                   panic!(e)
[INFO] [stderr]    |                          ^
[INFO] [stderr]    |
[INFO] [stderr]   ::: wa-server/src/threads/worker.rs:29:30
[INFO] [stderr]    |
[INFO] [stderr] 29 |               let submission = handle!(
[INFO] [stderr]    |  ______________________________-
[INFO] [stderr] 30 | |                 self.submission_receiver.recv(),
[INFO] [stderr] 31 | |                 "submission sender is disconnected: {}"
[INFO] [stderr] 32 | |             );
[INFO] [stderr]    | |_____________- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr]    = note: this warning originates in the macro `handle` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] help: add a "{}" format string to `Display` the message
[INFO] [stderr]    |
[INFO] [stderr] 17 |                 panic!("{}", e)
[INFO] [stderr]    |                        +++++
[INFO] [stderr] help: or use std::panic::panic_any instead
[INFO] [stderr]    |
[INFO] [stderr] 17 |                 std::panic::panic_any(e)
[INFO] [stderr]    |                 ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stderr] 
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stderr]   --> wa-server/src/main.rs:26:24
[INFO] [stderr]    |
[INFO] [stderr] 26 |                   panic!(e)
[INFO] [stderr]    |                          ^
[INFO] [stderr]    |
[INFO] [stderr]   ::: wa-server/src/threads/worker.rs:37:13
[INFO] [stderr]    |
[INFO] [stderr] 37 | /             handle!(@custom
[INFO] [stderr] 38 | |                 std::fs::create_dir_all(&working_dir),
[INFO] [stderr] 39 | |                 "can not create dir: {:?}",
[INFO] [stderr] 40 | |                 &working_dir,
[INFO] [stderr] 41 | |             );
[INFO] [stderr]    | |_____________- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr]    = note: this warning originates in the macro `handle` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] help: add a "{}" format string to `Display` the message
[INFO] [stderr]    |
[INFO] [stderr] 26 |                 panic!("{}", e)
[INFO] [stderr]    |                        +++++
[INFO] [stderr] help: or use std::panic::panic_any instead
[INFO] [stderr]    |
[INFO] [stderr] 26 |                 std::panic::panic_any(e)
[INFO] [stderr]    |                 ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stderr] 
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stderr]   --> wa-server/src/main.rs:26:24
[INFO] [stderr]    |
[INFO] [stderr] 26 |                   panic!(e)
[INFO] [stderr]    |                          ^
[INFO] [stderr]    |
[INFO] [stderr]   ::: wa-server/src/threads/worker.rs:63:17
[INFO] [stderr]    |
[INFO] [stderr] 63 | /                 handle!(@custom
[INFO] [stderr] 64 | |                     std::fs::remove_dir_all(&working_dir),
[INFO] [stderr] 65 | |                     "can not remove dir: {:?}",
[INFO] [stderr] 66 | |                     &working_dir,
[INFO] [stderr] 67 | |                 );
[INFO] [stderr]    | |_________________- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr]    = note: this warning originates in the macro `handle` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] help: add a "{}" format string to `Display` the message
[INFO] [stderr]    |
[INFO] [stderr] 26 |                 panic!("{}", e)
[INFO] [stderr]    |                        +++++
[INFO] [stderr] help: or use std::panic::panic_any instead
[INFO] [stderr]    |
[INFO] [stderr] 26 |                 std::panic::panic_any(e)
[INFO] [stderr]    |                 ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stderr] 
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stderr]    --> wa-server/src/main.rs:17:24
[INFO] [stderr]     |
[INFO] [stderr] 17  |                   panic!(e)
[INFO] [stderr]     |                          ^
[INFO] [stderr]     |
[INFO] [stderr]    ::: wa-server/src/threads/worker.rs:245:9
[INFO] [stderr]     |
[INFO] [stderr] 245 | /         handle!(
[INFO] [stderr] 246 | |             self.update_sender.send(update),
[INFO] [stderr] 247 | |             "updater is disconnected: {}"
[INFO] [stderr] 248 | |         );
[INFO] [stderr]     | |_________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr]     = note: this warning originates in the macro `handle` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] help: add a "{}" format string to `Display` the message
[INFO] [stderr]     |
[INFO] [stderr] 17  |                 panic!("{}", e)
[INFO] [stderr]     |                        +++++
[INFO] [stderr] help: or use std::panic::panic_any instead
[INFO] [stderr]     |
[INFO] [stderr] 17  |                 std::panic::panic_any(e)
[INFO] [stderr]     |                 ~~~~~~~~~~~~~~~~~~~~~
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stderr]  --> wa-server/src/types/judge.rs:3:45
[INFO] [stderr]   |
[INFO] [stderr] 3 | #[derive(Debug, Clone, Copy, PartialEq, Eq, Serialize, Deserialize)]
[INFO] [stderr]   |                                             ^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = help: move this `impl` block outside the of the current constant `_IMPL_SERIALIZE_FOR_JudgeType`
[INFO] [stderr]   = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]   = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stderr]   = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stderr]   = 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] [stderr]   = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stderr]  --> wa-server/src/types/judge.rs:3:56
[INFO] [stderr]   |
[INFO] [stderr] 3 | #[derive(Debug, Clone, Copy, PartialEq, Eq, Serialize, Deserialize)]
[INFO] [stderr]   |                                                        ^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_JudgeType`
[INFO] [stderr]   = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]   = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stderr]   = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stderr]   = 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] [stderr]   = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stderr]   --> wa-server/src/types/judge.rs:11:10
[INFO] [stderr]    |
[INFO] [stderr] 11 | #[derive(Serialize, Deserialize)]
[INFO] [stderr]    |          ^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = help: move this `impl` block outside the of the current constant `_IMPL_SERIALIZE_FOR_Submission`
[INFO] [stderr]    = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]    = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stderr]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stderr]   --> wa-server/src/types/judge.rs:11:21
[INFO] [stderr]    |
[INFO] [stderr] 11 | #[derive(Serialize, Deserialize)]
[INFO] [stderr]    |                     ^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_Submission`
[INFO] [stderr]    = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]    = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stderr]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stderr]   --> wa-server/src/types/judge.rs:23:45
[INFO] [stderr]    |
[INFO] [stderr] 23 | #[derive(Debug, Clone, Copy, PartialEq, Eq, Serialize, Deserialize)]
[INFO] [stderr]    |                                             ^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = help: move this `impl` block outside the of the current constant `_IMPL_SERIALIZE_FOR_JudgeStatus`
[INFO] [stderr]    = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]    = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stderr]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stderr]   --> wa-server/src/types/judge.rs:23:56
[INFO] [stderr]    |
[INFO] [stderr] 23 | #[derive(Debug, Clone, Copy, PartialEq, Eq, Serialize, Deserialize)]
[INFO] [stderr]    |                                                        ^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_JudgeStatus`
[INFO] [stderr]    = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]    = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stderr]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stderr]   --> wa-server/src/types/judge.rs:42:10
[INFO] [stderr]    |
[INFO] [stderr] 42 | #[derive(Serialize, Deserialize)]
[INFO] [stderr]    |          ^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = help: move this `impl` block outside the of the current constant `_IMPL_SERIALIZE_FOR_JudgeCaseResult`
[INFO] [stderr]    = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]    = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stderr]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stderr]   --> wa-server/src/types/judge.rs:42:21
[INFO] [stderr]    |
[INFO] [stderr] 42 | #[derive(Serialize, Deserialize)]
[INFO] [stderr]    |                     ^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_JudgeCaseResult`
[INFO] [stderr]    = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]    = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stderr]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stderr]   --> wa-server/src/types/judge.rs:49:10
[INFO] [stderr]    |
[INFO] [stderr] 49 | #[derive(Serialize, Deserialize)]
[INFO] [stderr]    |          ^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = help: move this `impl` block outside the of the current constant `_IMPL_SERIALIZE_FOR_JudgeResult`
[INFO] [stderr]    = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]    = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stderr]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stderr]   --> wa-server/src/types/judge.rs:49:21
[INFO] [stderr]    |
[INFO] [stderr] 49 | #[derive(Serialize, Deserialize)]
[INFO] [stderr]    |                     ^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_JudgeResult`
[INFO] [stderr]    = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]    = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stderr]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stderr]   --> wa-server/src/types/judge.rs:57:10
[INFO] [stderr]    |
[INFO] [stderr] 57 | #[derive(Serialize, Deserialize)]
[INFO] [stderr]    |          ^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = help: move this `impl` block outside the of the current constant `_IMPL_SERIALIZE_FOR_Update`
[INFO] [stderr]    = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]    = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stderr]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stderr]   --> wa-server/src/types/judge.rs:57:21
[INFO] [stderr]    |
[INFO] [stderr] 57 | #[derive(Serialize, Deserialize)]
[INFO] [stderr]    |                     ^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_Update`
[INFO] [stderr]    = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]    = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stderr]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stderr]  --> wa-server/src/types/lang.rs:3:51
[INFO] [stderr]   |
[INFO] [stderr] 3 | #[derive(Debug, Clone, Copy, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stderr]   |                                                   ^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = help: move this `impl` block outside the of the current constant `_IMPL_SERIALIZE_FOR_Language`
[INFO] [stderr]   = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]   = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stderr]   = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stderr]   = 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] [stderr]   = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stderr]  --> wa-server/src/types/lang.rs:3:62
[INFO] [stderr]   |
[INFO] [stderr] 3 | #[derive(Debug, Clone, Copy, PartialEq, Eq, Hash, Serialize, Deserialize)]
[INFO] [stderr]   |                                                              ^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_Language`
[INFO] [stderr]   = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]   = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stderr]   = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stderr]   = 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] [stderr]   = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stderr]   --> wa-server/src/types/sandbox.rs:14:10
[INFO] [stderr]    |
[INFO] [stderr] 14 | #[derive(Deserialize)]
[INFO] [stderr]    |          ^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = help: move this `impl` block outside the of the current constant `_IMPL_DESERIALIZE_FOR_Limit`
[INFO] [stderr]    = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]    = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stderr]    = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stderr]    = 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] [stderr]    = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: `wa-server` (bin "wa-server" test) generated 32 warnings (run `cargo fix --bin "wa-server" --tests` to apply 11 suggestions)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.06s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: redis v0.13.0
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 1`
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/wa_compare-50562e6c9140a73a)
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test test_compare ... FAILED
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- test_compare stdout ----
[INFO] [stdout] thread 'test_compare' panicked at wa-compare/src/lib.rs:74:5:
[INFO] [stdout] called `Result::unwrap()` on an `Err` value: Os { code: 2, kind: NotFound, message: "No such file or directory" }
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x555aa1793f15 - std::backtrace_rs::backtrace::libunwind::trace::he49dc9a9e3164223
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/std/src/../../backtrace/src/backtrace/libunwind.rs:105:5
[INFO] [stdout]    1:     0x555aa1793f15 - std::backtrace_rs::backtrace::trace_unsynchronized::h3a3e77c68030aa6b
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
[INFO] [stdout]    2:     0x555aa1793f15 - std::sys_common::backtrace::_print_fmt::h9479ad2f99afd5d4
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/std/src/sys_common/backtrace.rs:68:5
[INFO] [stdout]    3:     0x555aa1793f15 - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::hfb01aa1fa3fb1821
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/std/src/sys_common/backtrace.rs:44:22
[INFO] [stdout]    4:     0x555aa17ba70b - core::fmt::rt::Argument::fmt::h125e56152abbc1c3
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/core/src/fmt/rt.rs:165:63
[INFO] [stdout]    5:     0x555aa17ba70b - core::fmt::write::hb0ab4ff05ccfe741
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/core/src/fmt/mod.rs:1169:21
[INFO] [stdout]    6:     0x555aa17917ff - std::io::Write::write_fmt::hea6336dbf2fa00b8
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/std/src/io/mod.rs:1835:15
[INFO] [stdout]    7:     0x555aa1793cee - std::sys_common::backtrace::_print::h79ca548f3a2adf4b
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/std/src/sys_common/backtrace.rs:47:5
[INFO] [stdout]    8:     0x555aa1793cee - std::sys_common::backtrace::print::h9aebf997b2fea2d3
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/std/src/sys_common/backtrace.rs:34:9
[INFO] [stdout]    9:     0x555aa1795659 - std::panicking::default_hook::{{closure}}::h68a0954af2694526
[INFO] [stdout]   10:     0x555aa17953ac - std::panicking::default_hook::h5be50cc6849ffb00
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/std/src/panicking.rs:295:9
[INFO] [stdout]   11:     0x555aa176648f - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::hd874405dcbd1d3ed
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/alloc/src/boxed.rs:2036:9
[INFO] [stdout]   12:     0x555aa176648f - test::test_main::{{closure}}::h4f26a9df34a84b94
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/test/src/lib.rs:137:21
[INFO] [stdout]   13:     0x555aa1795c5b - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h00e96d9c62aa9a12
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/alloc/src/boxed.rs:2036:9
[INFO] [stdout]   14:     0x555aa1795c5b - std::panicking::rust_panic_with_hook::h3c0df6036729334c
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/std/src/panicking.rs:799:13
[INFO] [stdout]   15:     0x555aa17959d4 - std::panicking::begin_panic_handler::{{closure}}::ha3a21e93c4cfd807
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/std/src/panicking.rs:664:13
[INFO] [stdout]   16:     0x555aa17943d9 - std::sys_common::backtrace::__rust_end_short_backtrace::h19508a8f8ae71dc9
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/std/src/sys_common/backtrace.rs:171:18
[INFO] [stdout]   17:     0x555aa1795707 - rust_begin_unwind
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/std/src/panicking.rs:652:5
[INFO] [stdout]   18:     0x555aa171c823 - core::panicking::panic_fmt::h2ba8af99174d83ea
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/core/src/panicking.rs:72:14
[INFO] [stdout]   19:     0x555aa171cc76 - core::result::unwrap_failed::h52f3bbb78b59f71d
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/core/src/result.rs:1654:5
[INFO] [stdout]   20:     0x555aa171f1df - core::result::Result<T,E>::unwrap::h918d7f6fcb45577c
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/core/src/result.rs:1077:23
[INFO] [stdout]   21:     0x555aa171f1df - wa_compare::test_compare_utf8::hd9893441449dc25c
[INFO] [stdout]                                at /opt/rustwide/workdir/wa-compare/src/lib.rs:45:9
[INFO] [stdout]   22:     0x555aa1729606 - wa_compare::test_compare::h5dae34c815d838a1
[INFO] [stdout]                                at /opt/rustwide/workdir/wa-compare/src/lib.rs:24:5
[INFO] [stdout]   23:     0x555aa17295e7 - wa_compare::test_compare::{{closure}}::hd45f46f2cd40379d
[INFO] [stdout]                                at /opt/rustwide/workdir/wa-compare/src/lib.rs:23:18
[INFO] [stdout]   24:     0x555aa17309b6 - core::ops::function::FnOnce::call_once::hca8dfc6b2e209767
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   25:     0x555aa176adab - core::ops::function::FnOnce::call_once::h18c6bf92212b87a4
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   26:     0x555aa176adab - test::__rust_begin_short_backtrace::hdcf0edcfa9080086
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/test/src/lib.rs:625:18
[INFO] [stdout]   27:     0x555aa176a471 - test::run_test_in_process::{{closure}}::heac2c4eb375d2d10
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/test/src/lib.rs:648:60
[INFO] [stdout]   28:     0x555aa176a471 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h0289bafc8a1cc004
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/core/src/panic/unwind_safe.rs:272:9
[INFO] [stdout]   29:     0x555aa176a471 - std::panicking::try::do_call::h5e158f1ad8a5f983
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/std/src/panicking.rs:559:40
[INFO] [stdout]   30:     0x555aa176a471 - std::panicking::try::hea3411d60321c4de
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/std/src/panicking.rs:523:19
[INFO] [stdout]   31:     0x555aa176a471 - std::panic::catch_unwind::hafb7bb18bc47bbc7
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/std/src/panic.rs:149:14
[INFO] [stdout]   32:     0x555aa176a471 - test::run_test_in_process::h74dd138dc7762d99
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/test/src/lib.rs:648:27
[INFO] [stdout]   33:     0x555aa176a471 - test::run_test::{{closure}}::h6b390822e63606cf
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/test/src/lib.rs:569:43
[INFO] [stdout]   34:     0x555aa1732e44 - test::run_test::{{closure}}::h6e11dba8131d354b
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/test/src/lib.rs:599:41
[INFO] [stdout]   35:     0x555aa1732e44 - std::sys_common::backtrace::__rust_begin_short_backtrace::ha71b3541b59bdbbb
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/std/src/sys_common/backtrace.rs:155:18
[INFO] [stdout]   36:     0x555aa1737912 - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::hef92127c5ef9e53c
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/std/src/thread/mod.rs:542:17
[INFO] [stdout]   37:     0x555aa1737912 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h859c109f9d11c92b
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/core/src/panic/unwind_safe.rs:272:9
[INFO] [stdout]   38:     0x555aa1737912 - std::panicking::try::do_call::hbf534c458cd858f0
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/std/src/panicking.rs:559:40
[INFO] [stdout]   39:     0x555aa1737912 - std::panicking::try::h65c18365a7b9ad90
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/std/src/panicking.rs:523:19
[INFO] [stdout]   40:     0x555aa1737912 - std::panic::catch_unwind::h21b25d4c69478c39
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/std/src/panic.rs:149:14
[INFO] [stdout]   41:     0x555aa1737912 - std::thread::Builder::spawn_unchecked_::{{closure}}::h23335f620275a9bf
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/std/src/thread/mod.rs:541:30
[INFO] [stdout]   42:     0x555aa1737912 - core::ops::function::FnOnce::call_once{{vtable.shim}}::hb491dc55513e9b7c
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   43:     0x555aa1799e3b - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h41b39260afcffdc9
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/alloc/src/boxed.rs:2022:9
[INFO] [stdout]   44:     0x555aa1799e3b - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h6694c8dc6dd010c4
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/alloc/src/boxed.rs:2022:9
[INFO] [stdout]   45:     0x555aa1799e3b - std::sys::pal::unix::thread::Thread::new::thread_start::hf16038e1c8e19c99
[INFO] [stdout]                                at /rustc/b642703cf9526da1e72c0b6755753b939a9c6b6d/library/std/src/sys/pal/unix/thread.rs:108:17
[INFO] [stdout]   46:     0x7fbcf9831ac3 - <unknown>
[INFO] [stdout]   47:     0x7fbcf98c2a04 - __clone
[INFO] [stdout]   48:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     test_compare
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 0 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stderr] error: test failed, to rerun pass `-p wa-compare --lib`
[INFO] running `Command { std: "docker" "inspect" "e4db33fe502efe61d5dab56e8cbb94841ad9b8bdc71582332c31d092ea2934a4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e4db33fe502efe61d5dab56e8cbb94841ad9b8bdc71582332c31d092ea2934a4", kill_on_drop: false }`
[INFO] [stdout] e4db33fe502efe61d5dab56e8cbb94841ad9b8bdc71582332c31d092ea2934a4
