[INFO] cloning repository https://github.com/CreepyPvP/GameServer
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/CreepyPvP/GameServer" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FCreepyPvP%2FGameServer", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FCreepyPvP%2FGameServer'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 0984028cbe3882d063f463382cdde87f8c0f1ae1
[INFO] testing CreepyPvP/GameServer against 1.99.0-beta.8 for beta-1.100-4
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FCreepyPvP%2FGameServer" "/workspace/builds/worker-7-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/CreepyPvP/GameServer
[INFO] finished tweaking git repo https://github.com/CreepyPvP/GameServer
[INFO] tweaked toml for git repo https://github.com/CreepyPvP/GameServer written to /workspace/builds/worker-7-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/CreepyPvP/GameServer on toolchain 1.99.0-beta.8
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.99.0-beta.8" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/CreepyPvP/GameServer 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" "+1.99.0-beta.8" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded uuid v1.3.3
[INFO] [stderr]   Downloaded serde_json v1.0.96
[INFO] [stderr]   Downloaded ntex-rt v0.4.9
[INFO] [stderr]   Downloaded async-oneshot v0.5.0
[INFO] [stderr]   Downloaded ntex-tokio v0.2.3
[INFO] [stderr]   Downloaded ntex-connect v0.2.1
[INFO] [stderr]   Downloaded ntex-http v0.1.9
[INFO] [stderr]   Downloaded ntex-codec v0.6.2
[INFO] [stderr]   Downloaded ntex-macros v0.1.3
[INFO] [stderr]   Downloaded futures-micro v0.5.0
[INFO] [stderr]   Downloaded nanorand v0.7.0
[INFO] [stderr]   Downloaded quote v1.0.27
[INFO] [stderr]   Downloaded ntex-router v0.5.1
[INFO] [stderr]   Downloaded ntex-util v0.2.2
[INFO] [stderr]   Downloaded ntex-io v0.2.10
[INFO] [stderr]   Downloaded proc-macro2 v1.0.58
[INFO] [stderr]   Downloaded ntex-service v1.0.2
[INFO] [stderr]   Downloaded ntex-tls v0.2.4
[INFO] [stderr]   Downloaded serde_derive v1.0.163
[INFO] [stderr]   Downloaded serde v1.0.163
[INFO] [stderr]   Downloaded ntex-bytes v0.1.19
[INFO] [stderr]   Downloaded base64 v0.21.1
[INFO] [stderr]   Downloaded ntex-h2 v0.2.4
[INFO] [stderr]   Downloaded redis v0.23.0
[INFO] [stderr]   Downloaded ntex v0.6.7
[INFO] [stderr]   Downloaded regex v1.8.2
[INFO] [stderr]   Downloaded syn v2.0.16
[INFO] [stderr]   Downloaded libc v0.2.144
[INFO] [stderr]   Downloaded tokio v1.28.1
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:77db811e55d90add9212f6832c23229e3de5f1c1f9905e8cb07319ea15df73ac" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 481066a453440da65551c1ed4e3c1837fada4f756a16d493e020e474a661a48c
[INFO] running `Command { std: "docker" "start" "481066a453440da65551c1ed4e3c1837fada4f756a16d493e020e474a661a48c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "481066a453440da65551c1ed4e3c1837fada4f756a16d493e020e474a661a48c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "481066a453440da65551c1ed4e3c1837fada4f756a16d493e020e474a661a48c" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "481066a453440da65551c1ed4e3c1837fada4f756a16d493e020e474a661a48c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "481066a453440da65551c1ed4e3c1837fada4f756a16d493e020e474a661a48c" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.58
[INFO] [stderr]    Compiling unicode-ident v1.0.9
[INFO] [stderr]    Compiling quote v1.0.27
[INFO] [stderr]    Compiling libc v0.2.144
[INFO] [stderr]    Compiling bytes v1.4.0
[INFO] [stderr]    Compiling serde v1.0.163
[INFO] [stderr]    Compiling crossbeam-utils v0.8.15
[INFO] [stderr]    Compiling itoa v1.0.6
[INFO] [stderr]    Compiling event-listener v2.5.3
[INFO] [stderr]    Compiling slab v0.4.8
[INFO] [stderr]    Compiling tokio v1.28.1
[INFO] [stderr]    Compiling futures-micro v0.5.0
[INFO] [stderr]    Compiling fxhash v0.2.1
[INFO] [stderr]    Compiling typenum v1.16.0
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]    Compiling ntex-service v1.0.2
[INFO] [stderr]    Compiling async-oneshot v0.5.0
[INFO] [stderr]    Compiling futures-timer v3.0.2
[INFO] [stderr]    Compiling futures-channel v0.3.28
[INFO] [stderr]    Compiling futures-task v0.3.28
[INFO] [stderr]    Compiling percent-encoding v2.2.0
[INFO] [stderr]    Compiling thiserror v1.0.40
[INFO] [stderr]    Compiling futures-util v0.3.28
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling ryu v1.0.13
[INFO] [stderr]    Compiling tracing v0.1.37
[INFO] [stderr]    Compiling form_urlencoded v1.1.0
[INFO] [stderr]    Compiling unicode-normalization v0.1.22
[INFO] [stderr]    Compiling polling v2.8.0
[INFO] [stderr]    Compiling serde_json v1.0.96
[INFO] [stderr]    Compiling regex-syntax v0.7.2
[INFO] [stderr]    Compiling async-trait v0.1.68
[INFO] [stderr]    Compiling unicode-bidi v0.3.13
[INFO] [stderr]    Compiling cpufeatures v0.2.7
[INFO] [stderr]    Compiling encoding_rs v0.8.32
[INFO] [stderr]    Compiling nanorand v0.7.0
[INFO] [stderr]    Compiling sha1_smol v1.0.0
[INFO] [stderr]    Compiling base64 v0.21.1
[INFO] [stderr]    Compiling concurrent-queue v2.2.0
[INFO] [stderr]    Compiling async-channel v1.8.0
[INFO] [stderr]    Compiling http v0.2.9
[INFO] [stderr]    Compiling syn v2.0.16
[INFO] [stderr]    Compiling socket2 v0.4.9
[INFO] [stderr]    Compiling signal-hook-registry v1.4.1
[INFO] [stderr]    Compiling mio v0.8.6
[INFO] [stderr]    Compiling getrandom v0.2.9
[INFO] [stderr]    Compiling socket2 v0.5.3
[INFO] [stderr]    Compiling num_cpus v1.15.0
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling idna v0.3.0
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling url v2.3.1
[INFO] [stderr]    Compiling regex v1.8.2
[INFO] [stderr]    Compiling block-buffer v0.10.4
[INFO] [stderr]    Compiling crypto-common v0.1.6
[INFO] [stderr]    Compiling uuid v1.3.3
[INFO] [stderr]    Compiling digest v0.10.7
[INFO] [stderr]    Compiling sha-1 v0.10.1
[INFO] [stderr]    Compiling ntex-macros v0.1.3
[INFO] [stderr]    Compiling serde_derive v1.0.163
[INFO] [stderr]    Compiling thiserror-impl v1.0.40
[INFO] [stderr]    Compiling futures-macro v0.3.28
[INFO] [stderr]    Compiling ntex-rt v0.4.9
[INFO] [stderr]    Compiling tokio-util v0.7.8
[INFO] [stderr]    Compiling ntex-util v0.2.2
[INFO] [stderr]    Compiling combine v4.6.6
[INFO] [stderr]    Compiling futures-executor v0.3.28
[INFO] [stderr]    Compiling futures v0.3.28
[INFO] [stderr]    Compiling ntex-bytes v0.1.19
[INFO] [stderr]    Compiling serde_urlencoded v0.7.1
[INFO] [stderr]    Compiling ntex-codec v0.6.2
[INFO] [stderr]    Compiling ntex-http v0.1.9
[INFO] [stderr]    Compiling ntex-router v0.5.1
[INFO] [stderr]    Compiling ntex-io v0.2.10
[INFO] [stderr]    Compiling redis v0.23.0
[INFO] [stderr]    Compiling ntex-tls v0.2.4
[INFO] [stderr]    Compiling ntex-tokio v0.2.3
[INFO] [stderr]    Compiling ntex-connect v0.2.1
[INFO] [stderr]    Compiling ntex-h2 v0.2.4
[INFO] [stderr]    Compiling ntex v0.6.7
[INFO] [stderr]    Compiling manatees v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: this function depends on never type fallback being `()`
[INFO] [stdout]   --> src/command_worker.rs:46:5
[INFO] [stdout]    |
[INFO] [stdout] 46 | /     async fn register_client(
[INFO] [stdout] 47 | |         &mut self,
[INFO] [stdout] 48 | |         id: usize,
[INFO] [stdout] 49 | |         client: UnboundedSender<ClientEvent>,
[INFO] [stdout] 50 | |     ) -> Result<(), AppError> {
[INFO] [stdout]    | |_____________________________^
[INFO] [stdout]    |
[INFO] [stdout]    = help: specify the types explicitly
[INFO] [stdout] note: in edition 2024, the requirement `!: FromRedisValue` will fail
[INFO] [stdout]   --> src/command_worker.rs:52:18
[INFO] [stdout]    |
[INFO] [stdout] 52 |         self.con.set(format!("clients:{}", id), &self.id).await?;
[INFO] [stdout]    |                  ^^^
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in Rust 2024 and in a future release in all editions!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/never-type-fallback.html>
[INFO] [stdout]    = note: `#[warn(dependency_on_unit_never_type_fallback)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stdout] help: use `()` annotations to avoid fallback changes
[INFO] [stdout]    |
[INFO] [stdout] 52 |         self.con.set::<_, _, ()>(format!("clients:{}", id), &self.id).await?;
[INFO] [stdout]    |                     ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this function depends on never type fallback being `()`
[INFO] [stdout]   --> src/command_worker.rs:57:5
[INFO] [stdout]    |
[INFO] [stdout] 57 |     async fn remove_client(&mut self, id: usize) -> Result<(), AppError> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: specify the types explicitly
[INFO] [stdout] note: in edition 2024, the requirement `!: FromRedisValue` will fail
[INFO] [stdout]   --> src/command_worker.rs:59:18
[INFO] [stdout]    |
[INFO] [stdout] 59 |         self.con.del(format!("clients:{}", id)).await?;
[INFO] [stdout]    |                  ^^^
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in Rust 2024 and in a future release in all editions!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/never-type-fallback.html>
[INFO] [stdout] help: use `()` annotations to avoid fallback changes
[INFO] [stdout]    |
[INFO] [stdout] 59 |         self.con.del::<_, ()>(format!("clients:{}", id)).await?;
[INFO] [stdout]    |                     +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `packet`
[INFO] [stdout]    --> src/server.rs:105:34
[INFO] [stdout]     |
[INFO] [stdout] 105 |             ServerEvent::Message(packet, client_id) => {}
[INFO] [stdout]     |                                  ^^^^^^ help: if this is intentional, prefix it with an underscore: `_packet`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `client_id`
[INFO] [stdout]    --> src/server.rs:105:42
[INFO] [stdout]     |
[INFO] [stdout] 105 |             ServerEvent::Message(packet, client_id) => {}
[INFO] [stdout]     |                                          ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_client_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `TestData` is more private than the item `ServerMessage::Test::0`
[INFO] [stdout]   --> src/event/server_message.rs:26:10
[INFO] [stdout]    |
[INFO] [stdout] 26 |     Test(TestData),
[INFO] [stdout]    |          ^^^^^^^^ field `ServerMessage::Test::0` is reachable at visibility `pub(crate)`
[INFO] [stdout]    |
[INFO] [stdout] note: but type `TestData` is only usable at visibility `pub(self)`
[INFO] [stdout]   --> src/event/server_message.rs:20:1
[INFO] [stdout]    |
[INFO] [stdout] 20 | struct TestData {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^
[INFO] [stdout]    = note: `#[warn(private_interfaces)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Message` is never constructed
[INFO] [stdout]  --> src/event/server_message.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub enum ServerEvent {
[INFO] [stdout]   |          ----------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 9 |     Message(ServerMessage, usize),
[INFO] [stdout]   |     ^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CreateLobbyData` is never constructed
[INFO] [stdout]   --> src/event/server_message.rs:15:8
[INFO] [stdout]    |
[INFO] [stdout] 15 | struct CreateLobbyData {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/event/server_message.rs:26:10
[INFO] [stdout]    |
[INFO] [stdout] 26 |     Test(TestData),
[INFO] [stdout]    |     ---- ^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[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] 26 -     Test(TestData),
[INFO] [stdout] 26 +     Test(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Packet` is never constructed
[INFO] [stdout]   --> src/network/mod.rs:24:8
[INFO] [stdout]    |
[INFO] [stdout] 24 | struct Packet {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `server` is never read
[INFO] [stdout]   --> src/network/mod.rs:33:5
[INFO] [stdout]    |
[INFO] [stdout] 29 | struct WsSession {
[INFO] [stdout]    |        --------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 33 |     server: UnboundedSender<ServerEvent>,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_valid_token` is never used
[INFO] [stdout]   --> src/network/mod.rs:69:10
[INFO] [stdout]    |
[INFO] [stdout] 69 | async fn is_valid_token(token: &str, user_mgr: &UserManager) -> bool {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `room` and `client` are never read
[INFO] [stdout]   --> src/server.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct User {
[INFO] [stdout]    |            ---- fields in this struct
[INFO] [stdout] 12 |     room: Rc<Room>,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 13 |     client: Option<UnboundedSender<ClientEvent>>,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get` is never used
[INFO] [stdout]   --> src/server.rs:70:12
[INFO] [stdout]    |
[INFO] [stdout] 22 | impl<'a> UserManager {
[INFO] [stdout]    | -------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 70 |     pub fn get(&'a self, user_id: usize) -> Option<&'a User> {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 39.23s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: manatees v0.1.0 (/opt/rustwide/workdir), redis v0.23.0
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 3`
[INFO] running `Command { std: "docker" "inspect" "481066a453440da65551c1ed4e3c1837fada4f756a16d493e020e474a661a48c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "481066a453440da65551c1ed4e3c1837fada4f756a16d493e020e474a661a48c" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling manatees v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: this function depends on never type fallback being `()`
[INFO] [stdout]   --> src/command_worker.rs:46:5
[INFO] [stdout]    |
[INFO] [stdout] 46 | /     async fn register_client(
[INFO] [stdout] 47 | |         &mut self,
[INFO] [stdout] 48 | |         id: usize,
[INFO] [stdout] 49 | |         client: UnboundedSender<ClientEvent>,
[INFO] [stdout] 50 | |     ) -> Result<(), AppError> {
[INFO] [stdout]    | |_____________________________^
[INFO] [stdout]    |
[INFO] [stdout]    = help: specify the types explicitly
[INFO] [stdout] note: in edition 2024, the requirement `!: FromRedisValue` will fail
[INFO] [stdout]   --> src/command_worker.rs:52:18
[INFO] [stdout]    |
[INFO] [stdout] 52 |         self.con.set(format!("clients:{}", id), &self.id).await?;
[INFO] [stdout]    |                  ^^^
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in Rust 2024 and in a future release in all editions!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/never-type-fallback.html>
[INFO] [stdout]    = note: `#[warn(dependency_on_unit_never_type_fallback)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stdout] help: use `()` annotations to avoid fallback changes
[INFO] [stdout]    |
[INFO] [stdout] 52 |         self.con.set::<_, _, ()>(format!("clients:{}", id), &self.id).await?;
[INFO] [stdout]    |                     ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this function depends on never type fallback being `()`
[INFO] [stdout]   --> src/command_worker.rs:57:5
[INFO] [stdout]    |
[INFO] [stdout] 57 |     async fn remove_client(&mut self, id: usize) -> Result<(), AppError> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = help: specify the types explicitly
[INFO] [stdout] note: in edition 2024, the requirement `!: FromRedisValue` will fail
[INFO] [stdout]   --> src/command_worker.rs:59:18
[INFO] [stdout]    |
[INFO] [stdout] 59 |         self.con.del(format!("clients:{}", id)).await?;
[INFO] [stdout]    |                  ^^^
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in Rust 2024 and in a future release in all editions!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/never-type-fallback.html>
[INFO] [stdout] help: use `()` annotations to avoid fallback changes
[INFO] [stdout]    |
[INFO] [stdout] 59 |         self.con.del::<_, ()>(format!("clients:{}", id)).await?;
[INFO] [stdout]    |                     +++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `packet`
[INFO] [stdout]    --> src/server.rs:105:34
[INFO] [stdout]     |
[INFO] [stdout] 105 |             ServerEvent::Message(packet, client_id) => {}
[INFO] [stdout]     |                                  ^^^^^^ help: if this is intentional, prefix it with an underscore: `_packet`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `client_id`
[INFO] [stdout]    --> src/server.rs:105:42
[INFO] [stdout]     |
[INFO] [stdout] 105 |             ServerEvent::Message(packet, client_id) => {}
[INFO] [stdout]     |                                          ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_client_id`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `TestData` is more private than the item `ServerMessage::Test::0`
[INFO] [stdout]   --> src/event/server_message.rs:26:10
[INFO] [stdout]    |
[INFO] [stdout] 26 |     Test(TestData),
[INFO] [stdout]    |          ^^^^^^^^ field `ServerMessage::Test::0` is reachable at visibility `pub(crate)`
[INFO] [stdout]    |
[INFO] [stdout] note: but type `TestData` is only usable at visibility `pub(self)`
[INFO] [stdout]   --> src/event/server_message.rs:20:1
[INFO] [stdout]    |
[INFO] [stdout] 20 | struct TestData {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^
[INFO] [stdout]    = note: `#[warn(private_interfaces)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Message` is never constructed
[INFO] [stdout]  --> src/event/server_message.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub enum ServerEvent {
[INFO] [stdout]   |          ----------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 9 |     Message(ServerMessage, usize),
[INFO] [stdout]   |     ^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CreateLobbyData` is never constructed
[INFO] [stdout]   --> src/event/server_message.rs:15:8
[INFO] [stdout]    |
[INFO] [stdout] 15 | struct CreateLobbyData {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/event/server_message.rs:26:10
[INFO] [stdout]    |
[INFO] [stdout] 26 |     Test(TestData),
[INFO] [stdout]    |     ---- ^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[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] 26 -     Test(TestData),
[INFO] [stdout] 26 +     Test(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Packet` is never constructed
[INFO] [stdout]   --> src/network/mod.rs:24:8
[INFO] [stdout]    |
[INFO] [stdout] 24 | struct Packet {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `server` is never read
[INFO] [stdout]   --> src/network/mod.rs:33:5
[INFO] [stdout]    |
[INFO] [stdout] 29 | struct WsSession {
[INFO] [stdout]    |        --------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 33 |     server: UnboundedSender<ServerEvent>,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_valid_token` is never used
[INFO] [stdout]   --> src/network/mod.rs:69:10
[INFO] [stdout]    |
[INFO] [stdout] 69 | async fn is_valid_token(token: &str, user_mgr: &UserManager) -> bool {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `room` and `client` are never read
[INFO] [stdout]   --> src/server.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct User {
[INFO] [stdout]    |            ---- fields in this struct
[INFO] [stdout] 12 |     room: Rc<Room>,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 13 |     client: Option<UnboundedSender<ClientEvent>>,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get` is never used
[INFO] [stdout]   --> src/server.rs:70:12
[INFO] [stdout]    |
[INFO] [stdout] 22 | impl<'a> UserManager {
[INFO] [stdout]    | -------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 70 |     pub fn get(&'a self, user_id: usize) -> Option<&'a User> {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 1.13s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: manatees v0.1.0 (/opt/rustwide/workdir), redis v0.23.0
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 3`
[INFO] running `Command { std: "docker" "inspect" "481066a453440da65551c1ed4e3c1837fada4f756a16d493e020e474a661a48c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "481066a453440da65551c1ed4e3c1837fada4f756a16d493e020e474a661a48c" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "test" "--frozen", kill_on_drop: false }`
[INFO] [stderr] warning: this function depends on never type fallback being `()`
[INFO] [stderr]   --> src/command_worker.rs:46:5
[INFO] [stderr]    |
[INFO] [stderr] 46 | /     async fn register_client(
[INFO] [stderr] 47 | |         &mut self,
[INFO] [stderr] 48 | |         id: usize,
[INFO] [stderr] 49 | |         client: UnboundedSender<ClientEvent>,
[INFO] [stderr] 50 | |     ) -> Result<(), AppError> {
[INFO] [stderr]    | |_____________________________^
[INFO] [stderr]    |
[INFO] [stderr]    = help: specify the types explicitly
[INFO] [stderr] note: in edition 2024, the requirement `!: FromRedisValue` will fail
[INFO] [stderr]   --> src/command_worker.rs:52:18
[INFO] [stderr]    |
[INFO] [stderr] 52 |         self.con.set(format!("clients:{}", id), &self.id).await?;
[INFO] [stderr]    |                  ^^^
[INFO] [stderr]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in Rust 2024 and in a future release in all editions!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/never-type-fallback.html>
[INFO] [stderr]    = note: `#[warn(dependency_on_unit_never_type_fallback)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stderr] help: use `()` annotations to avoid fallback changes
[INFO] [stderr]    |
[INFO] [stderr] 52 |         self.con.set::<_, _, ()>(format!("clients:{}", id), &self.id).await?;
[INFO] [stderr]    |                     ++++++++++++
[INFO] [stderr] 
[INFO] [stderr] warning: this function depends on never type fallback being `()`
[INFO] [stderr]   --> src/command_worker.rs:57:5
[INFO] [stderr]    |
[INFO] [stderr] 57 |     async fn remove_client(&mut self, id: usize) -> Result<(), AppError> {
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = help: specify the types explicitly
[INFO] [stderr] note: in edition 2024, the requirement `!: FromRedisValue` will fail
[INFO] [stderr]   --> src/command_worker.rs:59:18
[INFO] [stderr]    |
[INFO] [stderr] 59 |         self.con.del(format!("clients:{}", id)).await?;
[INFO] [stderr]    |                  ^^^
[INFO] [stderr]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in Rust 2024 and in a future release in all editions!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/never-type-fallback.html>
[INFO] [stderr] help: use `()` annotations to avoid fallback changes
[INFO] [stderr]    |
[INFO] [stderr] 59 |         self.con.del::<_, ()>(format!("clients:{}", id)).await?;
[INFO] [stderr]    |                     +++++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `packet`
[INFO] [stderr]    --> src/server.rs:105:34
[INFO] [stderr]     |
[INFO] [stderr] 105 |             ServerEvent::Message(packet, client_id) => {}
[INFO] [stderr]     |                                  ^^^^^^ help: if this is intentional, prefix it with an underscore: `_packet`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `client_id`
[INFO] [stderr]    --> src/server.rs:105:42
[INFO] [stderr]     |
[INFO] [stderr] 105 |             ServerEvent::Message(packet, client_id) => {}
[INFO] [stderr]     |                                          ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_client_id`
[INFO] [stderr] 
[INFO] [stderr] warning: type `TestData` is more private than the item `ServerMessage::Test::0`
[INFO] [stderr]   --> src/event/server_message.rs:26:10
[INFO] [stderr]    |
[INFO] [stderr] 26 |     Test(TestData),
[INFO] [stderr]    |          ^^^^^^^^ field `ServerMessage::Test::0` is reachable at visibility `pub(crate)`
[INFO] [stderr]    |
[INFO] [stderr] note: but type `TestData` is only usable at visibility `pub(self)`
[INFO] [stderr]   --> src/event/server_message.rs:20:1
[INFO] [stderr]    |
[INFO] [stderr] 20 | struct TestData {
[INFO] [stderr]    | ^^^^^^^^^^^^^^^
[INFO] [stderr]    = note: `#[warn(private_interfaces)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variant `Message` is never constructed
[INFO] [stderr]  --> src/event/server_message.rs:9:5
[INFO] [stderr]   |
[INFO] [stderr] 6 | pub enum ServerEvent {
[INFO] [stderr]   |          ----------- variant in this enum
[INFO] [stderr] ...
[INFO] [stderr] 9 |     Message(ServerMessage, usize),
[INFO] [stderr]   |     ^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: struct `CreateLobbyData` is never constructed
[INFO] [stderr]   --> src/event/server_message.rs:15:8
[INFO] [stderr]    |
[INFO] [stderr] 15 | struct CreateLobbyData {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `0` is never read
[INFO] [stderr]   --> src/event/server_message.rs:26:10
[INFO] [stderr]    |
[INFO] [stderr] 26 |     Test(TestData),
[INFO] [stderr]    |     ---- ^^^^^^^^
[INFO] [stderr]    |     |
[INFO] [stderr]    |     field in this variant
[INFO] [stderr]    |
[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] 26 -     Test(TestData),
[INFO] [stderr] 26 +     Test(()),
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Packet` is never constructed
[INFO] [stderr]   --> src/network/mod.rs:24:8
[INFO] [stderr]    |
[INFO] [stderr] 24 | struct Packet {
[INFO] [stderr]    |        ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `server` is never read
[INFO] [stderr]   --> src/network/mod.rs:33:5
[INFO] [stderr]    |
[INFO] [stderr] 29 | struct WsSession {
[INFO] [stderr]    |        --------- field in this struct
[INFO] [stderr] ...
[INFO] [stderr] 33 |     server: UnboundedSender<ServerEvent>,
[INFO] [stderr]    |     ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `is_valid_token` is never used
[INFO] [stderr]   --> src/network/mod.rs:69:10
[INFO] [stderr]    |
[INFO] [stderr] 69 | async fn is_valid_token(token: &str, user_mgr: &UserManager) -> bool {
[INFO] [stderr]    |          ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: fields `room` and `client` are never read
[INFO] [stderr]   --> src/server.rs:12:5
[INFO] [stderr]    |
[INFO] [stderr] 11 | pub struct User {
[INFO] [stderr]    |            ---- fields in this struct
[INFO] [stderr] 12 |     room: Rc<Room>,
[INFO] [stderr]    |     ^^^^
[INFO] [stderr] 13 |     client: Option<UnboundedSender<ClientEvent>>,
[INFO] [stderr]    |     ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `get` is never used
[INFO] [stderr]   --> src/server.rs:70:12
[INFO] [stderr]    |
[INFO] [stderr] 22 | impl<'a> UserManager {
[INFO] [stderr]    | -------------------- method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 70 |     pub fn get(&'a self, user_id: usize) -> Option<&'a User> {
[INFO] [stderr]    |            ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `manatees` (bin "manatees" test) generated 13 warnings (run `cargo fix --bin "manatees" -p manatees --tests` to apply 4 suggestions)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.11s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: manatees v0.1.0 (/opt/rustwide/workdir), redis v0.23.0
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 3`
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/manatees-c0f726056e028552)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "481066a453440da65551c1ed4e3c1837fada4f756a16d493e020e474a661a48c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "481066a453440da65551c1ed4e3c1837fada4f756a16d493e020e474a661a48c", kill_on_drop: false }`
[INFO] [stdout] 481066a453440da65551c1ed4e3c1837fada4f756a16d493e020e474a661a48c
