[INFO] cloning repository https://github.com/horou-dsk/rust-test [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/horou-dsk/rust-test" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fhorou-dsk%2Frust-test", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fhorou-dsk%2Frust-test'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 9c0d770d9e08f09e6eba5c55045ec9356a4cca49 [INFO] checking horou-dsk/rust-test against try#f47dd4da3ae8c32c9e65d307bfe640b143e674df for pr-77526 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fhorou-dsk%2Frust-test" "/workspace/builds/worker-12/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-12/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/horou-dsk/rust-test on toolchain f47dd4da3ae8c32c9e65d307bfe640b143e674df [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+f47dd4da3ae8c32c9e65d307bfe640b143e674df" "read-manifest" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/horou-dsk/rust-test [INFO] finished tweaking git repo https://github.com/horou-dsk/rust-test [INFO] tweaked toml for git repo https://github.com/horou-dsk/rust-test written to /workspace/builds/worker-12/source/Cargo.toml [INFO] crate git repo https://github.com/horou-dsk/rust-test already has a lockfile, it will not be regenerated [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+f47dd4da3ae8c32c9e65d307bfe640b143e674df" "fetch" "--locked" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded reqwest v0.10.7 [INFO] [stderr] Downloaded tracing-core v0.1.11 [INFO] [stderr] Downloaded tokio-tls v0.2.1 [INFO] [stderr] Downloaded websocket v0.26.2 [INFO] [stderr] Downloaded tracing v0.1.17 [INFO] [stderr] Downloaded openssl-src v111.10.2+1.1.1g [INFO] [stderr] Downloaded wasm-bindgen-futures v0.4.15 [INFO] [stderr] Downloaded websocket-base v0.26.2 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-12/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-12/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" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+f47dd4da3ae8c32c9e65d307bfe640b143e674df" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 5c0fb1fbb4e510d58d43f1197575dc46cc4be1b2dd6e6a2dffc57c3173ca4923 [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" "5c0fb1fbb4e510d58d43f1197575dc46cc4be1b2dd6e6a2dffc57c3173ca4923", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "5c0fb1fbb4e510d58d43f1197575dc46cc4be1b2dd6e6a2dffc57c3173ca4923", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "5c0fb1fbb4e510d58d43f1197575dc46cc4be1b2dd6e6a2dffc57c3173ca4923", kill_on_drop: false }` [INFO] [stdout] 5c0fb1fbb4e510d58d43f1197575dc46cc4be1b2dd6e6a2dffc57c3173ca4923 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-12/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-12/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" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+f47dd4da3ae8c32c9e65d307bfe640b143e674df" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 1fea5359df9ca8164f6e8770942570342445b359bd86a6552b7750f04d009179 [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" "1fea5359df9ca8164f6e8770942570342445b359bd86a6552b7750f04d009179", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.72 [INFO] [stderr] Compiling autocfg v1.0.0 [INFO] [stderr] Compiling proc-macro2 v1.0.19 [INFO] [stderr] Compiling syn v1.0.36 [INFO] [stderr] Compiling byteorder v1.3.4 [INFO] [stderr] Compiling cc v1.0.58 [INFO] [stderr] Compiling pkg-config v0.3.18 [INFO] [stderr] Checking rand_core v0.4.2 [INFO] [stderr] Compiling autocfg v0.1.7 [INFO] [stderr] Compiling bitflags v1.2.1 [INFO] [stderr] Checking matches v0.1.8 [INFO] [stderr] Checking futures v0.1.29 [INFO] [stderr] Checking foreign-types-shared v0.1.1 [INFO] [stderr] Compiling maybe-uninit v2.0.0 [INFO] [stderr] Checking tinyvec v0.3.3 [INFO] [stderr] Compiling openssl v0.10.30 [INFO] [stderr] Checking bytes v0.5.6 [INFO] [stderr] Checking itoa v0.4.6 [INFO] [stderr] Compiling pin-project-internal v0.4.23 [INFO] [stderr] Checking arc-swap v0.4.7 [INFO] [stderr] Compiling native-tls v0.2.4 [INFO] [stderr] Compiling version_check v0.9.2 [INFO] [stderr] Compiling typenum v1.12.0 [INFO] [stderr] Compiling httparse v1.3.4 [INFO] [stderr] Checking openssl-probe v0.1.2 [INFO] [stderr] Checking pin-project-lite v0.1.7 [INFO] [stderr] Compiling serde_derive v1.0.114 [INFO] [stderr] Checking scopeguard v1.1.0 [INFO] [stderr] Checking futures-task v0.3.5 [INFO] [stderr] Checking byte-tools v0.3.1 [INFO] [stderr] Compiling version_check v0.1.5 [INFO] [stderr] Compiling serde v1.0.114 [INFO] [stderr] Checking try-lock v0.2.3 [INFO] [stderr] Checking fake-simd v0.1.2 [INFO] [stderr] Checking percent-encoding v1.0.1 [INFO] [stderr] Checking tower-service v0.3.0 [INFO] [stderr] Checking safemem v0.3.3 [INFO] [stderr] Checking opaque-debug v0.2.3 [INFO] [stderr] Checking percent-encoding v2.1.0 [INFO] [stderr] Compiling serde_json v1.0.57 [INFO] [stderr] Checking traitobject v0.1.0 [INFO] [stderr] Checking dtoa v0.4.6 [INFO] [stderr] Checking language-tags v0.2.2 [INFO] [stderr] Checking mime v0.3.16 [INFO] [stderr] Checking typeable v0.1.2 [INFO] [stderr] Checking ipnet v2.3.0 [INFO] [stderr] Checking base64 v0.12.3 [INFO] [stderr] Checking rustc-serialize v0.3.24 [INFO] [stderr] Checking tracing-core v0.1.11 [INFO] [stderr] Checking foreign-types v0.3.2 [INFO] [stderr] Checking unicode-bidi v0.3.4 [INFO] [stderr] Checking rand_core v0.3.1 [INFO] [stderr] Checking rand_jitter v0.1.4 [INFO] [stderr] Checking unicode-normalization v0.1.13 [INFO] [stderr] Checking lock_api v0.3.4 [INFO] [stderr] Checking http v0.2.1 [INFO] [stderr] Checking block-padding v0.1.5 [INFO] [stderr] Compiling crossbeam-utils v0.7.2 [INFO] [stderr] Compiling hashbrown v0.8.1 [INFO] [stderr] Compiling indexmap v1.5.0 [INFO] [stderr] Compiling openssl-src v111.10.2+1.1.1g [INFO] [stderr] Compiling rand_chacha v0.1.1 [INFO] [stderr] Compiling rand_pcg v0.1.2 [INFO] [stderr] Compiling rand v0.6.5 [INFO] [stderr] Checking log v0.4.11 [INFO] [stderr] Checking rand_isaac v0.1.1 [INFO] [stderr] Checking rand_hc v0.1.0 [INFO] [stderr] Checking rand_xorshift v0.1.1 [INFO] [stderr] Compiling unicase v2.6.0 [INFO] [stderr] Compiling unicase v1.4.2 [INFO] [stderr] Checking encoding_rs v0.8.23 [INFO] [stderr] Compiling parking_lot_core v0.6.2 [INFO] [stderr] Compiling parking_lot v0.9.0 [INFO] [stderr] Checking tracing v0.1.17 [INFO] [stderr] Checking want v0.3.0 [INFO] [stderr] Checking log v0.3.9 [INFO] [stderr] Checking smallvec v0.6.13 [INFO] [stderr] Checking base64 v0.9.3 [INFO] [stderr] Checking base64 v0.10.1 [INFO] [stderr] Checking tokio-sync v0.1.8 [INFO] [stderr] Checking mime v0.2.6 [INFO] [stderr] Compiling quote v1.0.7 [INFO] [stderr] Checking idna v0.1.5 [INFO] [stderr] Checking idna v0.2.0 [INFO] [stderr] Checking tokio-executor v0.1.10 [INFO] [stderr] Checking iovec v0.1.4 [INFO] [stderr] Checking net2 v0.2.34 [INFO] [stderr] Checking num_cpus v1.13.0 [INFO] [stderr] Checking signal-hook-registry v1.2.0 [INFO] [stderr] Checking time v0.1.43 [INFO] [stderr] Checking rand_os v0.1.3 [INFO] [stderr] Checking socket2 v0.3.12 [INFO] [stderr] Checking bytes v0.4.12 [INFO] [stderr] Compiling mime_guess v2.0.3 [INFO] [stderr] Compiling openssl-sys v0.9.58 [INFO] [stderr] Checking mio v0.6.22 [INFO] [stderr] Checking url v1.7.2 [INFO] [stderr] Checking url v2.1.1 [INFO] [stderr] Checking tokio-io v0.1.13 [INFO] [stderr] Checking generic-array v0.12.3 [INFO] [stderr] Checking http-body v0.3.1 [INFO] [stderr] Checking block-buffer v0.7.3 [INFO] [stderr] Checking digest v0.8.1 [INFO] [stderr] Checking sha-1 v0.8.2 [INFO] [stderr] Checking tokio-codec v0.1.2 [INFO] [stderr] Checking mio-uds v0.6.8 [INFO] [stderr] Checking tokio-reactor v0.1.12 [INFO] [stderr] Checking hyper v0.10.16 [INFO] [stderr] Checking tokio-tcp v0.1.4 [INFO] [stderr] Compiling tokio-macros v0.2.5 [INFO] [stderr] Checking tokio v0.2.22 [INFO] [stderr] Checking pin-project v0.4.23 [INFO] [stderr] Checking futures-util v0.3.5 [INFO] [stderr] Checking tokio-util v0.3.1 [INFO] [stderr] Checking h2 v0.2.6 [INFO] [stderr] Checking serde_urlencoded v0.6.1 [INFO] [stderr] Checking hyper v0.13.7 [INFO] [stderr] Checking tokio-tls v0.2.1 [INFO] [stderr] Checking tokio-tls v0.3.1 [INFO] [stderr] Checking websocket-base v0.26.2 [INFO] [stderr] Checking websocket v0.26.2 [INFO] [stderr] Checking hyper-tls v0.4.3 [INFO] [stderr] Checking reqwest v0.10.7 [INFO] [stderr] Checking RustTest v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `websocket::server::upgrade::WsUpgrade` [INFO] [stdout] --> src/player.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use websocket::server::upgrade::WsUpgrade; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `websocket::server::upgrade::sync::Buffer` [INFO] [stdout] --> src/player.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use websocket::server::upgrade::sync::Buffer; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::borrow::Borrow` [INFO] [stdout] --> src/room.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::borrow::Borrow; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::fs::read` [INFO] [stdout] --> src/struct_test.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::fs::read; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashMap` [INFO] [stdout] --> src/http_test.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::collections::HashMap; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused macro definition [INFO] [stdout] --> src/macro_test.rs:9:1 [INFO] [stdout] | [INFO] [stdout] 9 | / macro_rules! vector { [INFO] [stdout] 10 | | ($($x:expr),*) => { [INFO] [stdout] 11 | | { [INFO] [stdout] 12 | | let mut temp_vec = Vec::new(); [INFO] [stdout] ... | [INFO] [stdout] 16 | | }; [INFO] [stdout] 17 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_macros)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `websocket::server::upgrade::WsUpgrade` [INFO] [stdout] --> src/player.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use websocket::server::upgrade::WsUpgrade; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `websocket::server::upgrade::sync::Buffer` [INFO] [stdout] --> src/player.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use websocket::server::upgrade::sync::Buffer; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::borrow::Borrow` [INFO] [stdout] --> src/room.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::borrow::Borrow; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::fs::read` [INFO] [stdout] --> src/struct_test.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::fs::read; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashMap` [INFO] [stdout] --> src/http_test.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::collections::HashMap; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused macro definition [INFO] [stdout] --> src/macro_test.rs:9:1 [INFO] [stdout] | [INFO] [stdout] 9 | / macro_rules! vector { [INFO] [stdout] 10 | | ($($x:expr),*) => { [INFO] [stdout] 11 | | { [INFO] [stdout] 12 | | let mut temp_vec = Vec::new(); [INFO] [stdout] ... | [INFO] [stdout] 16 | | }; [INFO] [stdout] 17 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_macros)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: `UnsafeCell>>>` cannot be shared between threads safely [INFO] [stdout] --> src/websocket_server.rs:17:9 [INFO] [stdout] | [INFO] [stdout] 17 | thread::spawn(move || { [INFO] [stdout] | ^^^^^^^^^^^^^ `UnsafeCell>>>` cannot be shared between threads safely [INFO] [stdout] | [INFO] [stdout] = help: within `(unicase::UniCase, hyper::header::internals::item::Item)`, the trait `Sync` is not implemented for `UnsafeCell>>>` [INFO] [stdout] = note: required because it appears within the type `hyper::header::internals::cell::OptCell>>` [INFO] [stdout] = note: required because it appears within the type `hyper::header::internals::item::Item` [INFO] [stdout] = note: required because it appears within the type `(unicase::UniCase, hyper::header::internals::item::Item)` [INFO] [stdout] = note: required because of the requirements on the impl of `Sync` for `Unique<(unicase::UniCase, hyper::header::internals::item::Item)>` [INFO] [stdout] = note: required because it appears within the type `alloc::raw_vec::RawVec<(unicase::UniCase, hyper::header::internals::item::Item)>` [INFO] [stdout] = note: required because it appears within the type `Vec<(unicase::UniCase, hyper::header::internals::item::Item)>` [INFO] [stdout] = note: required because it appears within the type `hyper::header::internals::vec_map::VecMap, hyper::header::internals::item::Item>` [INFO] [stdout] = note: required because it appears within the type `Headers` [INFO] [stdout] = note: required because it appears within the type `websocket::sync::Client` [INFO] [stdout] = note: required because of the requirements on the impl of `std::marker::Send` for `&'static websocket::sync::Client` [INFO] [stdout] = note: required because it appears within the type `Player` [INFO] [stdout] = note: required because it appears within the type `(u32, Player)` [INFO] [stdout] = note: required because of the requirements on the impl of `std::marker::Send` for `hashbrown::raw::RawTable<(u32, Player)>` [INFO] [stdout] = note: required because it appears within the type `hashbrown::map::HashMap` [INFO] [stdout] = note: required because it appears within the type `HashMap` [INFO] [stdout] = note: required because it appears within the type `Room` [INFO] [stdout] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Mutex` [INFO] [stdout] = note: required because of the requirements on the impl of `std::marker::Send` for `Arc>` [INFO] [stdout] = note: required because it appears within the type `[closure@src/websocket_server.rs:17:23: 56:10]` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: `UnsafeCell>>` cannot be shared between threads safely [INFO] [stdout] --> src/websocket_server.rs:17:9 [INFO] [stdout] | [INFO] [stdout] 17 | thread::spawn(move || { [INFO] [stdout] | ^^^^^^^^^^^^^ `UnsafeCell>>` cannot be shared between threads safely [INFO] [stdout] | [INFO] [stdout] = help: within `(unicase::UniCase, hyper::header::internals::item::Item)`, the trait `Sync` is not implemented for `UnsafeCell>>` [INFO] [stdout] = note: required because it appears within the type `hyper::header::internals::cell::PtrMapCell<(dyn HeaderFormat + Sync + std::marker::Send + 'static)>` [INFO] [stdout] = note: required because it appears within the type `hyper::header::internals::item::Item` [INFO] [stdout] = note: required because it appears within the type `(unicase::UniCase, hyper::header::internals::item::Item)` [INFO] [stdout] = note: required because of the requirements on the impl of `Sync` for `Unique<(unicase::UniCase, hyper::header::internals::item::Item)>` [INFO] [stdout] = note: required because it appears within the type `alloc::raw_vec::RawVec<(unicase::UniCase, hyper::header::internals::item::Item)>` [INFO] [stdout] = note: required because it appears within the type `Vec<(unicase::UniCase, hyper::header::internals::item::Item)>` [INFO] [stdout] = note: required because it appears within the type `hyper::header::internals::vec_map::VecMap, hyper::header::internals::item::Item>` [INFO] [stdout] = note: required because it appears within the type `Headers` [INFO] [stdout] = note: required because it appears within the type `websocket::sync::Client` [INFO] [stdout] = note: required because of the requirements on the impl of `std::marker::Send` for `&'static websocket::sync::Client` [INFO] [stdout] = note: required because it appears within the type `Player` [INFO] [stdout] = note: required because it appears within the type `(u32, Player)` [INFO] [stdout] = note: required because of the requirements on the impl of `std::marker::Send` for `hashbrown::raw::RawTable<(u32, Player)>` [INFO] [stdout] = note: required because it appears within the type `hashbrown::map::HashMap` [INFO] [stdout] = note: required because it appears within the type `HashMap` [INFO] [stdout] = note: required because it appears within the type `Room` [INFO] [stdout] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Mutex` [INFO] [stdout] = note: required because of the requirements on the impl of `std::marker::Send` for `Arc>` [INFO] [stdout] = note: required because it appears within the type `[closure@src/websocket_server.rs:17:23: 56:10]` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: `UnsafeCell>>>` cannot be shared between threads safely [INFO] [stdout] --> src/websocket_server.rs:17:9 [INFO] [stdout] | [INFO] [stdout] 17 | thread::spawn(move || { [INFO] [stdout] | ^^^^^^^^^^^^^ `UnsafeCell>>>` cannot be shared between threads safely [INFO] [stdout] | [INFO] [stdout] = help: within `(unicase::UniCase, hyper::header::internals::item::Item)`, the trait `Sync` is not implemented for `UnsafeCell>>>` [INFO] [stdout] = note: required because it appears within the type `hyper::header::internals::cell::OptCell>>` [INFO] [stdout] = note: required because it appears within the type `hyper::header::internals::item::Item` [INFO] [stdout] = note: required because it appears within the type `(unicase::UniCase, hyper::header::internals::item::Item)` [INFO] [stdout] = note: required because of the requirements on the impl of `Sync` for `Unique<(unicase::UniCase, hyper::header::internals::item::Item)>` [INFO] [stdout] = note: required because it appears within the type `alloc::raw_vec::RawVec<(unicase::UniCase, hyper::header::internals::item::Item)>` [INFO] [stdout] = note: required because it appears within the type `Vec<(unicase::UniCase, hyper::header::internals::item::Item)>` [INFO] [stdout] = note: required because it appears within the type `hyper::header::internals::vec_map::VecMap, hyper::header::internals::item::Item>` [INFO] [stdout] = note: required because it appears within the type `Headers` [INFO] [stdout] = note: required because it appears within the type `websocket::sync::Client` [INFO] [stdout] = note: required because of the requirements on the impl of `std::marker::Send` for `&'static websocket::sync::Client` [INFO] [stdout] = note: required because it appears within the type `Player` [INFO] [stdout] = note: required because it appears within the type `(u32, Player)` [INFO] [stdout] = note: required because of the requirements on the impl of `std::marker::Send` for `hashbrown::raw::RawTable<(u32, Player)>` [INFO] [stdout] = note: required because it appears within the type `hashbrown::map::HashMap` [INFO] [stdout] = note: required because it appears within the type `HashMap` [INFO] [stdout] = note: required because it appears within the type `Room` [INFO] [stdout] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Mutex` [INFO] [stdout] = note: required because of the requirements on the impl of `std::marker::Send` for `Arc>` [INFO] [stdout] = note: required because it appears within the type `[closure@src/websocket_server.rs:17:23: 56:10]` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: `UnsafeCell>>` cannot be shared between threads safely [INFO] [stdout] --> src/websocket_server.rs:17:9 [INFO] [stdout] | [INFO] [stdout] 17 | thread::spawn(move || { [INFO] [stdout] | ^^^^^^^^^^^^^ `UnsafeCell>>` cannot be shared between threads safely [INFO] [stdout] | [INFO] [stdout] = help: within `(unicase::UniCase, hyper::header::internals::item::Item)`, the trait `Sync` is not implemented for `UnsafeCell>>` [INFO] [stdout] = note: required because it appears within the type `hyper::header::internals::cell::PtrMapCell<(dyn HeaderFormat + Sync + std::marker::Send + 'static)>` [INFO] [stdout] = note: required because it appears within the type `hyper::header::internals::item::Item` [INFO] [stdout] = note: required because it appears within the type `(unicase::UniCase, hyper::header::internals::item::Item)` [INFO] [stdout] = note: required because of the requirements on the impl of `Sync` for `Unique<(unicase::UniCase, hyper::header::internals::item::Item)>` [INFO] [stdout] = note: required because it appears within the type `alloc::raw_vec::RawVec<(unicase::UniCase, hyper::header::internals::item::Item)>` [INFO] [stdout] = note: required because it appears within the type `Vec<(unicase::UniCase, hyper::header::internals::item::Item)>` [INFO] [stdout] = note: required because it appears within the type `hyper::header::internals::vec_map::VecMap, hyper::header::internals::item::Item>` [INFO] [stdout] = note: required because it appears within the type `Headers` [INFO] [stdout] = note: required because it appears within the type `websocket::sync::Client` [INFO] [stdout] = note: required because of the requirements on the impl of `std::marker::Send` for `&'static websocket::sync::Client` [INFO] [stdout] = note: required because it appears within the type `Player` [INFO] [stdout] = note: required because it appears within the type `(u32, Player)` [INFO] [stdout] = note: required because of the requirements on the impl of `std::marker::Send` for `hashbrown::raw::RawTable<(u32, Player)>` [INFO] [stdout] = note: required because it appears within the type `hashbrown::map::HashMap` [INFO] [stdout] = note: required because it appears within the type `HashMap` [INFO] [stdout] = note: required because it appears within the type `Room` [INFO] [stdout] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Mutex` [INFO] [stdout] = note: required because of the requirements on the impl of `std::marker::Send` for `Arc>` [INFO] [stdout] = note: required because it appears within the type `[closure@src/websocket_server.rs:17:23: 56:10]` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 2 previous errors; 6 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0277`. [INFO] [stdout] [INFO] [stdout] error: aborting due to 2 previous errors; 6 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0277`. [INFO] [stdout] [INFO] [stderr] error: could not compile `RustTest` [INFO] [stderr] [INFO] [stderr] To learn more, run the command again with --verbose. [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stderr] error: build failed [INFO] running `Command { std: "docker" "inspect" "1fea5359df9ca8164f6e8770942570342445b359bd86a6552b7750f04d009179", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "1fea5359df9ca8164f6e8770942570342445b359bd86a6552b7750f04d009179", kill_on_drop: false }` [INFO] [stdout] 1fea5359df9ca8164f6e8770942570342445b359bd86a6552b7750f04d009179