[INFO] cloning repository https://github.com/WiktorLidwin/RustDemo [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/WiktorLidwin/RustDemo" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FWiktorLidwin%2FRustDemo", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FWiktorLidwin%2FRustDemo'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] f23eeb8cec6885e71591a11c79cb8533a904d842 [INFO] testing WiktorLidwin/RustDemo against beta-2022-04-10 for beta-1.61-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FWiktorLidwin%2FRustDemo" "/workspace/builds/worker-0/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-0/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/WiktorLidwin/RustDemo on toolchain beta-2022-04-10 [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2022-04-10" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/WiktorLidwin/RustDemo [INFO] finished tweaking git repo https://github.com/WiktorLidwin/RustDemo [INFO] tweaked toml for git repo https://github.com/WiktorLidwin/RustDemo written to /workspace/builds/worker-0/source/Cargo.toml [INFO] crate git repo https://github.com/WiktorLidwin/RustDemo already has a lockfile, it will not be regenerated [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2022-04-10" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0/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:eaef2f80f755933c374d2ae5edccceec0c1312ceb8a4e0b6404e8ab76561e1e5" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2022-04-10" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] 249198de0f0a39fdcf026c667b9e4e0d70a6df91b660493a41529e8b0a901bc2 [INFO] running `Command { std: "docker" "start" "-a" "249198de0f0a39fdcf026c667b9e4e0d70a6df91b660493a41529e8b0a901bc2", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "249198de0f0a39fdcf026c667b9e4e0d70a6df91b660493a41529e8b0a901bc2", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "249198de0f0a39fdcf026c667b9e4e0d70a6df91b660493a41529e8b0a901bc2", kill_on_drop: false }` [INFO] [stdout] 249198de0f0a39fdcf026c667b9e4e0d70a6df91b660493a41529e8b0a901bc2 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0/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=warn" "-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:eaef2f80f755933c374d2ae5edccceec0c1312ceb8a4e0b6404e8ab76561e1e5" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2022-04-10" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 8f9f3989a880bfb73001ca4df9f3a92e0e92759e3787413956d0e4f68cd799d5 [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "8f9f3989a880bfb73001ca4df9f3a92e0e92759e3787413956d0e4f68cd799d5", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.81 [INFO] [stderr] Compiling syn v1.0.50 [INFO] [stderr] Compiling log v0.3.9 [INFO] [stderr] Compiling idna v0.1.5 [INFO] [stderr] Compiling base64 v0.9.3 [INFO] [stderr] Compiling mime v0.2.6 [INFO] [stderr] Compiling url v1.7.2 [INFO] [stderr] Compiling rand_os v0.1.3 [INFO] [stderr] Compiling time v0.1.44 [INFO] [stderr] Compiling num_cpus v1.13.0 [INFO] [stderr] Compiling rand v0.6.5 [INFO] [stderr] Compiling hyper v0.10.16 [INFO] [stderr] Compiling phf_generator v0.7.24 [INFO] [stderr] Compiling phf_codegen v0.7.24 [INFO] [stderr] Compiling mime_guess v1.8.8 [INFO] [stderr] Compiling serde_derive v1.0.117 [INFO] [stderr] Compiling iron v0.6.1 [INFO] [stderr] Compiling serde v1.0.117 [INFO] [stderr] Compiling bincode v1.3.1 [INFO] [stderr] Compiling server v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused imports: `ErrorKind`, `Read` [INFO] [stdout] --> src/TicTacToeStructs.rs:9:19 [INFO] [stdout] | [INFO] [stdout] 9 | use std::io::{ErrorKind, Read, Write}; [INFO] [stdout] | ^^^^^^^^^ ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::net::TcpListener` [INFO] [stdout] --> src/TicTacToeStructs.rs:10:9 [INFO] [stdout] | [INFO] [stdout] 10 | use std::net::TcpListener; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::sync::mpsc` [INFO] [stdout] --> src/TicTacToeStructs.rs:11:9 [INFO] [stdout] | [INFO] [stdout] 11 | use std::sync::mpsc; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::thread` [INFO] [stdout] --> src/TicTacToeStructs.rs:12:9 [INFO] [stdout] | [INFO] [stdout] 12 | use std::thread; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::TicTacToeStructs::TicTacToeStructs::Room` [INFO] [stdout] --> src/main.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 15 | use crate::TicTacToeStructs::TicTacToeStructs::Room; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `currentPlayerTurn` [INFO] [stdout] --> src/main.rs:92:25 [INFO] [stdout] | [INFO] [stdout] 92 | let currentPlayerTurn = Rooms.findRoom(msg.getMessage().getData()).unwrap().getPlayersTurn(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_currentPlayerTurn` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `index` is never read [INFO] [stdout] --> src/TicTacToeStructs.rs:121:21 [INFO] [stdout] | [INFO] [stdout] 121 | let mut index = 0; [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/TicTacToeStructs.rs:200:17 [INFO] [stdout] | [INFO] [stdout] 200 | let mut temp = self.rooms.iter().find(|&x| x.id == id); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `LOCAL` [INFO] [stdout] --> src/main.rs:6:1 [INFO] [stdout] | [INFO] [stdout] 6 | const LOCAL: &str = "127.0.0.1:6000"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module `TicTacToeStructs` should have a snake case name [INFO] [stdout] --> src/main.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | mod TicTacToeStructs; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `tic_tac_toe_structs` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `PORT` should have a snake case name [INFO] [stdout] --> src/main.rs:28:9 [INFO] [stdout] | [INFO] [stdout] 28 | let PORT: &str = &*std::env::var("PORT").unwrap().to_owned(); [INFO] [stdout] | ^^^^ help: convert the identifier to snake case: `port` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `IP` should have a snake case name [INFO] [stdout] --> src/main.rs:31:9 [INFO] [stdout] | [INFO] [stdout] 31 | let IP = Ipv4Addr::UNSPECIFIED.to_string(); [INFO] [stdout] | ^^ help: convert the identifier to snake case: `ip` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `localIp` should have a snake case name [INFO] [stdout] --> src/main.rs:35:9 [INFO] [stdout] | [INFO] [stdout] 35 | let localIp = IP+":" +PORT; [INFO] [stdout] | ^^^^^^^ help: convert the identifier to snake case: `local_ip` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `TCPlocalIp` should have a snake case name [INFO] [stdout] --> src/main.rs:36:9 [INFO] [stdout] | [INFO] [stdout] 36 | let TCPlocalIp = "0.0.0.0:4040"; [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to snake case: `tcplocal_ip` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `Rooms` should have a snake case name [INFO] [stdout] --> src/main.rs:47:13 [INFO] [stdout] | [INFO] [stdout] 47 | let mut Rooms = Rooms::new(); [INFO] [stdout] | ^^^^^ help: convert the identifier to snake case: `rooms` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `numOfPlayers` should have a snake case name [INFO] [stdout] --> src/main.rs:91:25 [INFO] [stdout] | [INFO] [stdout] 91 | let numOfPlayers = Rooms.findRoom(msg.getMessage().getData()).unwrap().getNumberOfPlayers(); [INFO] [stdout] | ^^^^^^^^^^^^ help: convert the identifier to snake case: `num_of_players` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `currentPlayerTurn` should have a snake case name [INFO] [stdout] --> src/main.rs:92:25 [INFO] [stdout] | [INFO] [stdout] 92 | let currentPlayerTurn = Rooms.findRoom(msg.getMessage().getData()).unwrap().getPlayersTurn(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `current_player_turn` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused comparison that must be used [INFO] [stdout] --> src/TicTacToeStructs.rs:261:17 [INFO] [stdout] | [INFO] [stdout] 261 | self.winner == self.checkBoardWinner(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the comparison produces a value [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 261 | let _ = self.winner == self.checkBoardWinner(); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 18 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 48.57s [INFO] running `Command { std: "docker" "inspect" "8f9f3989a880bfb73001ca4df9f3a92e0e92759e3787413956d0e4f68cd799d5", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "8f9f3989a880bfb73001ca4df9f3a92e0e92759e3787413956d0e4f68cd799d5", kill_on_drop: false }` [INFO] [stdout] 8f9f3989a880bfb73001ca4df9f3a92e0e92759e3787413956d0e4f68cd799d5 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0/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=warn" "-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:eaef2f80f755933c374d2ae5edccceec0c1312ceb8a4e0b6404e8ab76561e1e5" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2022-04-10" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 4f5b9f1e354000cc25378f7fc784fba37d1f5b353ad24d1821e6529f40dce5e7 [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "4f5b9f1e354000cc25378f7fc784fba37d1f5b353ad24d1821e6529f40dce5e7", kill_on_drop: false }` [INFO] [stderr] Compiling server v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused imports: `ErrorKind`, `Read` [INFO] [stdout] --> src/TicTacToeStructs.rs:9:19 [INFO] [stdout] | [INFO] [stdout] 9 | use std::io::{ErrorKind, Read, Write}; [INFO] [stdout] | ^^^^^^^^^ ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::net::TcpListener` [INFO] [stdout] --> src/TicTacToeStructs.rs:10:9 [INFO] [stdout] | [INFO] [stdout] 10 | use std::net::TcpListener; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::sync::mpsc` [INFO] [stdout] --> src/TicTacToeStructs.rs:11:9 [INFO] [stdout] | [INFO] [stdout] 11 | use std::sync::mpsc; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::thread` [INFO] [stdout] --> src/TicTacToeStructs.rs:12:9 [INFO] [stdout] | [INFO] [stdout] 12 | use std::thread; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::TicTacToeStructs::TicTacToeStructs::Room` [INFO] [stdout] --> src/main.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 15 | use crate::TicTacToeStructs::TicTacToeStructs::Room; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `currentPlayerTurn` [INFO] [stdout] --> src/main.rs:92:25 [INFO] [stdout] | [INFO] [stdout] 92 | let currentPlayerTurn = Rooms.findRoom(msg.getMessage().getData()).unwrap().getPlayersTurn(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_currentPlayerTurn` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `index` is never read [INFO] [stdout] --> src/TicTacToeStructs.rs:121:21 [INFO] [stdout] | [INFO] [stdout] 121 | let mut index = 0; [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/TicTacToeStructs.rs:200:17 [INFO] [stdout] | [INFO] [stdout] 200 | let mut temp = self.rooms.iter().find(|&x| x.id == id); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant is never used: `LOCAL` [INFO] [stdout] --> src/main.rs:6:1 [INFO] [stdout] | [INFO] [stdout] 6 | const LOCAL: &str = "127.0.0.1:6000"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module `TicTacToeStructs` should have a snake case name [INFO] [stdout] --> src/main.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | mod TicTacToeStructs; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `tic_tac_toe_structs` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `PORT` should have a snake case name [INFO] [stdout] --> src/main.rs:28:9 [INFO] [stdout] | [INFO] [stdout] 28 | let PORT: &str = &*std::env::var("PORT").unwrap().to_owned(); [INFO] [stdout] | ^^^^ help: convert the identifier to snake case: `port` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `IP` should have a snake case name [INFO] [stdout] --> src/main.rs:31:9 [INFO] [stdout] | [INFO] [stdout] 31 | let IP = Ipv4Addr::UNSPECIFIED.to_string(); [INFO] [stdout] | ^^ help: convert the identifier to snake case: `ip` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `localIp` should have a snake case name [INFO] [stdout] --> src/main.rs:35:9 [INFO] [stdout] | [INFO] [stdout] 35 | let localIp = IP+":" +PORT; [INFO] [stdout] | ^^^^^^^ help: convert the identifier to snake case: `local_ip` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `TCPlocalIp` should have a snake case name [INFO] [stdout] --> src/main.rs:36:9 [INFO] [stdout] | [INFO] [stdout] 36 | let TCPlocalIp = "0.0.0.0:4040"; [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to snake case: `tcplocal_ip` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `Rooms` should have a snake case name [INFO] [stdout] --> src/main.rs:47:13 [INFO] [stdout] | [INFO] [stdout] 47 | let mut Rooms = Rooms::new(); [INFO] [stdout] | ^^^^^ help: convert the identifier to snake case: `rooms` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `numOfPlayers` should have a snake case name [INFO] [stdout] --> src/main.rs:91:25 [INFO] [stdout] | [INFO] [stdout] 91 | let numOfPlayers = Rooms.findRoom(msg.getMessage().getData()).unwrap().getNumberOfPlayers(); [INFO] [stdout] | ^^^^^^^^^^^^ help: convert the identifier to snake case: `num_of_players` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `currentPlayerTurn` should have a snake case name [INFO] [stdout] --> src/main.rs:92:25 [INFO] [stdout] | [INFO] [stdout] 92 | let currentPlayerTurn = Rooms.findRoom(msg.getMessage().getData()).unwrap().getPlayersTurn(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `current_player_turn` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused comparison that must be used [INFO] [stdout] --> src/TicTacToeStructs.rs:261:17 [INFO] [stdout] | [INFO] [stdout] 261 | self.winner == self.checkBoardWinner(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the comparison produces a value [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 261 | let _ = self.winner == self.checkBoardWinner(); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 18 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 1.17s [INFO] [stderr] Executable unittests src/main.rs (/opt/rustwide/target/debug/deps/server-dd27f60e01702112) [INFO] running `Command { std: "docker" "inspect" "4f5b9f1e354000cc25378f7fc784fba37d1f5b353ad24d1821e6529f40dce5e7", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "4f5b9f1e354000cc25378f7fc784fba37d1f5b353ad24d1821e6529f40dce5e7", kill_on_drop: false }` [INFO] [stdout] 4f5b9f1e354000cc25378f7fc784fba37d1f5b353ad24d1821e6529f40dce5e7 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0/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=warn" "-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:eaef2f80f755933c374d2ae5edccceec0c1312ceb8a4e0b6404e8ab76561e1e5" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2022-04-10" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] df14de7e26e82f76bd0a661d58840b8d39fd2123d54044627f57385eb1ca3783 [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "df14de7e26e82f76bd0a661d58840b8d39fd2123d54044627f57385eb1ca3783", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] warning: unused imports: `ErrorKind`, `Read` [INFO] [stderr] --> src/TicTacToeStructs.rs:9:19 [INFO] [stderr] | [INFO] [stderr] 9 | use std::io::{ErrorKind, Read, Write}; [INFO] [stderr] | ^^^^^^^^^ ^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::net::TcpListener` [INFO] [stderr] --> src/TicTacToeStructs.rs:10:9 [INFO] [stderr] | [INFO] [stderr] 10 | use std::net::TcpListener; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::sync::mpsc` [INFO] [stderr] --> src/TicTacToeStructs.rs:11:9 [INFO] [stderr] | [INFO] [stderr] 11 | use std::sync::mpsc; [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::thread` [INFO] [stderr] --> src/TicTacToeStructs.rs:12:9 [INFO] [stderr] | [INFO] [stderr] 12 | use std::thread; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::TicTacToeStructs::TicTacToeStructs::Room` [INFO] [stderr] --> src/main.rs:15:5 [INFO] [stderr] | [INFO] [stderr] 15 | use crate::TicTacToeStructs::TicTacToeStructs::Room; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `currentPlayerTurn` [INFO] [stderr] --> src/main.rs:92:25 [INFO] [stderr] | [INFO] [stderr] 92 | let currentPlayerTurn = Rooms.findRoom(msg.getMessage().getData()).unwrap().getPlayersTurn(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_currentPlayerTurn` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: value assigned to `index` is never read [INFO] [stderr] --> src/TicTacToeStructs.rs:121:21 [INFO] [stderr] | [INFO] [stderr] 121 | let mut index = 0; [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_assignments)]` on by default [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/TicTacToeStructs.rs:200:17 [INFO] [stderr] | [INFO] [stderr] 200 | let mut temp = self.rooms.iter().find(|&x| x.id == id); [INFO] [stderr] | ----^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] warning: constant is never used: `LOCAL` [INFO] [stderr] --> src/main.rs:6:1 [INFO] [stderr] | [INFO] [stderr] 6 | const LOCAL: &str = "127.0.0.1:6000"; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: module `TicTacToeStructs` should have a snake case name [INFO] [stderr] --> src/main.rs:14:5 [INFO] [stderr] | [INFO] [stderr] 14 | mod TicTacToeStructs; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `tic_tac_toe_structs` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(non_snake_case)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variable `PORT` should have a snake case name [INFO] [stderr] --> src/main.rs:28:9 [INFO] [stderr] | [INFO] [stderr] 28 | let PORT: &str = &*std::env::var("PORT").unwrap().to_owned(); [INFO] [stderr] | ^^^^ help: convert the identifier to snake case: `port` [INFO] [stderr] [INFO] [stderr] warning: variable `IP` should have a snake case name [INFO] [stderr] --> src/main.rs:31:9 [INFO] [stderr] | [INFO] [stderr] 31 | let IP = Ipv4Addr::UNSPECIFIED.to_string(); [INFO] [stderr] | ^^ help: convert the identifier to snake case: `ip` [INFO] [stderr] [INFO] [stderr] warning: variable `localIp` should have a snake case name [INFO] [stderr] --> src/main.rs:35:9 [INFO] [stderr] | [INFO] [stderr] 35 | let localIp = IP+":" +PORT; [INFO] [stderr] | ^^^^^^^ help: convert the identifier to snake case: `local_ip` [INFO] [stderr] [INFO] [stderr] warning: variable `TCPlocalIp` should have a snake case name [INFO] [stderr] --> src/main.rs:36:9 [INFO] [stderr] | [INFO] [stderr] 36 | let TCPlocalIp = "0.0.0.0:4040"; [INFO] [stderr] | ^^^^^^^^^^ help: convert the identifier to snake case: `tcplocal_ip` [INFO] [stderr] [INFO] [stderr] warning: variable `Rooms` should have a snake case name [INFO] [stderr] --> src/main.rs:47:13 [INFO] [stderr] | [INFO] [stderr] 47 | let mut Rooms = Rooms::new(); [INFO] [stderr] | ^^^^^ help: convert the identifier to snake case: `rooms` [INFO] [stderr] [INFO] [stderr] warning: variable `numOfPlayers` should have a snake case name [INFO] [stderr] --> src/main.rs:91:25 [INFO] [stderr] | [INFO] [stderr] 91 | let numOfPlayers = Rooms.findRoom(msg.getMessage().getData()).unwrap().getNumberOfPlayers(); [INFO] [stderr] | ^^^^^^^^^^^^ help: convert the identifier to snake case: `num_of_players` [INFO] [stderr] [INFO] [stderr] warning: variable `currentPlayerTurn` should have a snake case name [INFO] [stderr] --> src/main.rs:92:25 [INFO] [stderr] | [INFO] [stderr] 92 | let currentPlayerTurn = Rooms.findRoom(msg.getMessage().getData()).unwrap().getPlayersTurn(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `current_player_turn` [INFO] [stderr] [INFO] [stderr] warning: unused comparison that must be used [INFO] [stderr] --> src/TicTacToeStructs.rs:261:17 [INFO] [stderr] | [INFO] [stderr] 261 | self.winner == self.checkBoardWinner(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the comparison produces a value [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_must_use)]` on by default [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 261 | let _ = self.winner == self.checkBoardWinner(); [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: `server` (bin "server" test) generated 18 warnings [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 0.49s [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/debug/deps/server-dd27f60e01702112) [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" "df14de7e26e82f76bd0a661d58840b8d39fd2123d54044627f57385eb1ca3783", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "df14de7e26e82f76bd0a661d58840b8d39fd2123d54044627f57385eb1ca3783", kill_on_drop: false }` [INFO] [stdout] df14de7e26e82f76bd0a661d58840b8d39fd2123d54044627f57385eb1ca3783