[INFO] crate flattiverse_connector 36.1.1 is already in cache [INFO] extracting crate flattiverse_connector 36.1.1 into work/ex/pr-60444/sources/master#92b5e20ad59b183a2e6cd79423f54b8aa7ac9cbf/reg/flattiverse_connector/36.1.1 [INFO] extracting crate flattiverse_connector 36.1.1 into work/ex/pr-60444/sources/try#cf8e5a06b289fbcdaf75ca55c057b2cb09fff33b/reg/flattiverse_connector/36.1.1 [INFO] validating manifest of flattiverse_connector-36.1.1 on toolchain master#92b5e20ad59b183a2e6cd79423f54b8aa7ac9cbf [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+92b5e20ad59b183a2e6cd79423f54b8aa7ac9cbf-alt" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] validating manifest of flattiverse_connector-36.1.1 on toolchain try#cf8e5a06b289fbcdaf75ca55c057b2cb09fff33b [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+cf8e5a06b289fbcdaf75ca55c057b2cb09fff33b-alt" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started frobbing flattiverse_connector-36.1.1 [INFO] finished frobbing flattiverse_connector-36.1.1 [INFO] frobbed toml for flattiverse_connector-36.1.1 written to work/ex/pr-60444/sources/master#92b5e20ad59b183a2e6cd79423f54b8aa7ac9cbf/reg/flattiverse_connector/36.1.1/Cargo.toml [INFO] started frobbing flattiverse_connector-36.1.1 [INFO] finished frobbing flattiverse_connector-36.1.1 [INFO] frobbed toml for flattiverse_connector-36.1.1 written to work/ex/pr-60444/sources/try#cf8e5a06b289fbcdaf75ca55c057b2cb09fff33b/reg/flattiverse_connector/36.1.1/Cargo.toml [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+92b5e20ad59b183a2e6cd79423f54b8aa7ac9cbf-alt" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+cf8e5a06b289fbcdaf75ca55c057b2cb09fff33b-alt" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+92b5e20ad59b183a2e6cd79423f54b8aa7ac9cbf-alt" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+cf8e5a06b289fbcdaf75ca55c057b2cb09fff33b-alt" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] checking flattiverse_connector-36.1.1 against try#cf8e5a06b289fbcdaf75ca55c057b2cb09fff33b for pr-60444 [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/pr-60444/worker-5/try#cf8e5a06b289fbcdaf75ca55c057b2cb09fff33b:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/pr-60444/sources/try#cf8e5a06b289fbcdaf75ca55c057b2cb09fff33b/reg/flattiverse_connector/36.1.1:/opt/crater/workdir:ro,Z" "-v" "/mnt/big/crater/work/local/cargo-home:/opt/crater/cargo-home:ro,Z" "-v" "/mnt/big/crater/work/local/rustup-home:/opt/crater/rustup-home:ro,Z" "-e" "USER_ID=1000" "-e" "SOURCE_DIR=/opt/crater/workdir" "-e" "MAP_USER_ID=1000" "-e" "CARGO_TARGET_DIR=/opt/crater/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/crater/cargo-home" "-e" "RUSTUP_HOME=/opt/crater/rustup-home" "-w" "/opt/crater/workdir" "-m" "1536M" "--network" "none" "rustops/crates-build-env" "/opt/crater/cargo-home/bin/cargo" "+cf8e5a06b289fbcdaf75ca55c057b2cb09fff33b-alt" "check" "--frozen" "--all" "--all-targets"` [INFO] [stdout] d6bebf8f5b846a7da0dac2adeee10f7144b2e43733206336467c52bfb4eb4ec3 [INFO] running `"docker" "start" "-a" "d6bebf8f5b846a7da0dac2adeee10f7144b2e43733206336467c52bfb4eb4ec3"` [INFO] [stderr] Checking flattiverse_connector v36.1.1 (/opt/crater/workdir) [INFO] [stderr] error[E0275]: overflow evaluating the requirement `std::sync::Weak: std::marker::Sync` [INFO] [stderr] --> src/unit/sun.rs:39:6 [INFO] [stderr] | [INFO] [stderr] 39 | impl Unit for Sun { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::cargo_item::CargoItemData` [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::sun::Sun` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `std::sync::Weak: std::marker::Sync` [INFO] [stderr] --> src/unit/sun.rs:39:6 [INFO] [stderr] | [INFO] [stderr] 39 | impl Unit for Sun { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::cargo_item::CargoItemData` [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::sun::Sun` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `std::sync::Weak: std::marker::Sync` [INFO] [stderr] --> src/unit/buoy.rs:34:6 [INFO] [stderr] | [INFO] [stderr] 34 | impl Unit for Buoy { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::cargo_item::CargoItemData` [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::buoy::Buoy` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `std::sync::Weak: std::marker::Sync` [INFO] [stderr] --> src/unit/buoy.rs:34:6 [INFO] [stderr] | [INFO] [stderr] 34 | impl Unit for Buoy { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::cargo_item::CargoItemData` [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::buoy::Buoy` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `unit::controllable_info::ControllableInfoMut: std::marker::Send` [INFO] [stderr] --> src/unit/unit.rs:141:6 [INFO] [stderr] | [INFO] [stderr] 141 | impl Unit for UnitData { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `universe::Universe` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::ai_unit::AiUnitData` [INFO] [stderr] = note: required because it appears within the type `unit::ai_base::AiBase` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `unit::any_ai_unit::AnyAiUnit` [INFO] [stderr] = note: required because it appears within the type `unit::any_unit::AnyUnit` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `controllable::controllable::ControllableData` [INFO] [stderr] = note: required because it appears within the type `controllable::ship::Ship` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `controllable::any_controllable::AnyControllable` [INFO] [stderr] = note: required because it appears within the type `std::option::Option` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `unit::controllable_info::ControllableInfoMut: std::marker::Send` [INFO] [stderr] --> src/unit/unit.rs:141:6 [INFO] [stderr] | [INFO] [stderr] 141 | impl Unit for UnitData { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `universe::Universe` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::ai_unit::AiUnitData` [INFO] [stderr] = note: required because it appears within the type `unit::ai_base::AiBase` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `unit::any_ai_unit::AnyAiUnit` [INFO] [stderr] = note: required because it appears within the type `unit::any_unit::AnyUnit` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `controllable::controllable::ControllableData` [INFO] [stderr] = note: required because it appears within the type `controllable::ship::Ship` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `controllable::any_controllable::AnyControllable` [INFO] [stderr] = note: required because it appears within the type `std::option::Option` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `std::sync::Weak: std::marker::Sync` [INFO] [stderr] --> src/unit/moon.rs:24:6 [INFO] [stderr] | [INFO] [stderr] 24 | impl Unit for Moon { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::cargo_item::CargoItemData` [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::moon::Moon` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `std::sync::Weak: std::marker::Sync` [INFO] [stderr] --> src/unit/moon.rs:24:6 [INFO] [stderr] | [INFO] [stderr] 24 | impl Unit for Moon { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::cargo_item::CargoItemData` [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::moon::Moon` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `std::sync::Weak: std::marker::Sync` [INFO] [stderr] --> src/unit/shot.rs:202:6 [INFO] [stderr] | [INFO] [stderr] 202 | impl Unit for Shot { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::cargo_item::CargoItemData` [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::shot::Shot` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `std::sync::Weak: std::marker::Sync` [INFO] [stderr] --> src/unit/shot.rs:202:6 [INFO] [stderr] | [INFO] [stderr] 202 | impl Unit for Shot { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::cargo_item::CargoItemData` [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::shot::Shot` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `std::sync::Weak: std::marker::Sync` [INFO] [stderr] --> src/unit/gate.rs:41:6 [INFO] [stderr] | [INFO] [stderr] 41 | impl Unit for Gate { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::cargo_item::CargoItemData` [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::gate::Gate` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `std::sync::Weak: std::marker::Sync` [INFO] [stderr] --> src/unit/gate.rs:41:6 [INFO] [stderr] | [INFO] [stderr] 41 | impl Unit for Gate { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::cargo_item::CargoItemData` [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::gate::Gate` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `std::sync::Weak: std::marker::Sync` [INFO] [stderr] --> src/unit/storm.rs:126:6 [INFO] [stderr] | [INFO] [stderr] 126 | impl Unit for Storm { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::cargo_item::CargoItemData` [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::storm::Storm` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `std::sync::Weak: std::marker::Sync` [INFO] [stderr] --> src/unit/storm.rs:126:6 [INFO] [stderr] | [INFO] [stderr] 126 | impl Unit for Storm { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::cargo_item::CargoItemData` [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::storm::Storm` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `std::sync::Weak: std::marker::Sync` [INFO] [stderr] --> src/unit/pixel.rs:80:6 [INFO] [stderr] | [INFO] [stderr] 80 | impl Unit for Pixel { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::cargo_item::CargoItemData` [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::pixel::Pixel` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `std::sync::Weak: std::marker::Sync` [INFO] [stderr] --> src/unit/pixel.rs:80:6 [INFO] [stderr] | [INFO] [stderr] 80 | impl Unit for Pixel { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::cargo_item::CargoItemData` [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::pixel::Pixel` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `std::sync::Weak: std::marker::Sync` [INFO] [stderr] --> src/unit/planet.rs:24:6 [INFO] [stderr] | [INFO] [stderr] 24 | impl Unit for Planet { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::cargo_item::CargoItemData` [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::planet::Planet` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `std::sync::Weak: std::marker::Sync` [INFO] [stderr] --> src/unit/planet.rs:24:6 [INFO] [stderr] | [INFO] [stderr] 24 | impl Unit for Planet { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::cargo_item::CargoItemData` [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::planet::Planet` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `std::sync::Weak: std::marker::Sync` [INFO] [stderr] --> src/unit/switch.rs:59:6 [INFO] [stderr] | [INFO] [stderr] 59 | impl Unit for Switch { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::cargo_item::CargoItemData` [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::switch::Switch` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `std::sync::Weak: std::marker::Sync` [INFO] [stderr] --> src/unit/switch.rs:59:6 [INFO] [stderr] | [INFO] [stderr] 59 | impl Unit for Switch { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::cargo_item::CargoItemData` [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::switch::Switch` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `std::sync::Weak: std::marker::Sync` [INFO] [stderr] --> src/unit/nebula.rs:31:6 [INFO] [stderr] | [INFO] [stderr] 31 | impl Unit for Nebula { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::cargo_item::CargoItemData` [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::nebula::Nebula` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `std::sync::Weak: std::marker::Sync` [INFO] [stderr] --> src/unit/nebula.rs:31:6 [INFO] [stderr] | [INFO] [stderr] 31 | impl Unit for Nebula { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::cargo_item::CargoItemData` [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::nebula::Nebula` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `std::sync::Weak: std::marker::Sync` [INFO] [stderr] --> src/unit/ai_unit.rs:52:6 [INFO] [stderr] | [INFO] [stderr] 52 | impl AiUnit for AiUnitData { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::cargo_item::CargoItemData` [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::ai_unit::AiUnitData` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `std::sync::Weak: std::marker::Sync` [INFO] [stderr] --> src/unit/ai_unit.rs:52:6 [INFO] [stderr] | [INFO] [stderr] 52 | impl AiUnit for AiUnitData { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::cargo_item::CargoItemData` [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::ai_unit::AiUnitData` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `std::sync::Weak: std::marker::Sync` [INFO] [stderr] --> src/unit/ai_unit.rs:80:6 [INFO] [stderr] | [INFO] [stderr] 80 | impl Unit for AiUnitData { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::cargo_item::CargoItemData` [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::ai_unit::AiUnitData` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `std::sync::Weak: std::marker::Sync` [INFO] [stderr] --> src/unit/ai_unit.rs:80:6 [INFO] [stderr] | [INFO] [stderr] 80 | impl Unit for AiUnitData { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::cargo_item::CargoItemData` [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::ai_unit::AiUnitData` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `item::cargo_item::CargoItemData: std::marker::Send` [INFO] [stderr] --> src/unit/ai_base.rs:24:6 [INFO] [stderr] | [INFO] [stderr] 24 | impl Unit for AiBase { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::ai_unit::AiUnitData` [INFO] [stderr] = note: required because it appears within the type `unit::ai_base::AiBase` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `item::cargo_item::CargoItemData: std::marker::Send` [INFO] [stderr] --> src/unit/ai_base.rs:24:6 [INFO] [stderr] | [INFO] [stderr] 24 | impl Unit for AiBase { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::ai_unit::AiUnitData` [INFO] [stderr] = note: required because it appears within the type `unit::ai_base::AiBase` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `item::cargo_item::CargoItemData: std::marker::Send` [INFO] [stderr] --> src/unit/ai_base.rs:88:6 [INFO] [stderr] | [INFO] [stderr] 88 | impl AiUnit for AiBase { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::ai_unit::AiUnitData` [INFO] [stderr] = note: required because it appears within the type `unit::ai_base::AiBase` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `item::cargo_item::CargoItemData: std::marker::Send` [INFO] [stderr] --> src/unit/ai_base.rs:88:6 [INFO] [stderr] | [INFO] [stderr] 88 | impl AiUnit for AiBase { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::ai_unit::AiUnitData` [INFO] [stderr] = note: required because it appears within the type `unit::ai_base::AiBase` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `item::cargo_item::CargoItemData: std::marker::Send` [INFO] [stderr] --> src/unit/ai_ship.rs:24:6 [INFO] [stderr] | [INFO] [stderr] 24 | impl Unit for AiShip { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::ai_unit::AiUnitData` [INFO] [stderr] = note: required because it appears within the type `unit::ai_ship::AiShip` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `item::cargo_item::CargoItemData: std::marker::Send` [INFO] [stderr] --> src/unit/ai_ship.rs:24:6 [INFO] [stderr] | [INFO] [stderr] 24 | impl Unit for AiShip { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::ai_unit::AiUnitData` [INFO] [stderr] = note: required because it appears within the type `unit::ai_ship::AiShip` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `item::cargo_item::CargoItemData: std::marker::Send` [INFO] [stderr] --> src/unit/ai_ship.rs:88:6 [INFO] [stderr] | [INFO] [stderr] 88 | impl AiUnit for AiShip { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::ai_unit::AiUnitData` [INFO] [stderr] = note: required because it appears within the type `unit::ai_ship::AiShip` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `item::cargo_item::CargoItemData: std::marker::Send` [INFO] [stderr] --> src/unit/ai_ship.rs:88:6 [INFO] [stderr] | [INFO] [stderr] 88 | impl AiUnit for AiShip { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::ai_unit::AiUnitData` [INFO] [stderr] = note: required because it appears within the type `unit::ai_ship::AiShip` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `item::cargo_item::CargoItemData: std::marker::Send` [INFO] [stderr] --> src/unit/ai_probe.rs:24:6 [INFO] [stderr] | [INFO] [stderr] 24 | impl Unit for AiProbe { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::ai_unit::AiUnitData` [INFO] [stderr] = note: required because it appears within the type `unit::ai_probe::AiProbe` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `item::cargo_item::CargoItemData: std::marker::Send` [INFO] [stderr] --> src/unit/ai_probe.rs:24:6 [INFO] [stderr] | [INFO] [stderr] 24 | impl Unit for AiProbe { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::ai_unit::AiUnitData` [INFO] [stderr] = note: required because it appears within the type `unit::ai_probe::AiProbe` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `item::cargo_item::CargoItemData: std::marker::Send` [INFO] [stderr] --> src/unit/ai_probe.rs:88:6 [INFO] [stderr] | [INFO] [stderr] 88 | impl AiUnit for AiProbe { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::ai_unit::AiUnitData` [INFO] [stderr] = note: required because it appears within the type `unit::ai_probe::AiProbe` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `item::cargo_item::CargoItemData: std::marker::Send` [INFO] [stderr] --> src/unit/ai_probe.rs:88:6 [INFO] [stderr] | [INFO] [stderr] 88 | impl AiUnit for AiProbe { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::ai_unit::AiUnitData` [INFO] [stderr] = note: required because it appears within the type `unit::ai_probe::AiProbe` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `item::cargo_item::CargoItemData: std::marker::Send` [INFO] [stderr] --> src/unit/ai_drone.rs:24:6 [INFO] [stderr] | [INFO] [stderr] 24 | impl Unit for AiDrone { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::ai_unit::AiUnitData` [INFO] [stderr] = note: required because it appears within the type `unit::ai_drone::AiDrone` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `item::cargo_item::CargoItemData: std::marker::Send` [INFO] [stderr] --> src/unit/ai_drone.rs:24:6 [INFO] [stderr] | [INFO] [stderr] 24 | impl Unit for AiDrone { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::ai_unit::AiUnitData` [INFO] [stderr] = note: required because it appears within the type `unit::ai_drone::AiDrone` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `item::cargo_item::CargoItemData: std::marker::Send` [INFO] [stderr] --> src/unit/ai_drone.rs:88:6 [INFO] [stderr] | [INFO] [stderr] 88 | impl AiUnit for AiDrone { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::ai_unit::AiUnitData` [INFO] [stderr] = note: required because it appears within the type `unit::ai_drone::AiDrone` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `item::cargo_item::CargoItemData: std::marker::Send` [INFO] [stderr] --> src/unit/ai_drone.rs:88:6 [INFO] [stderr] | [INFO] [stderr] 88 | impl AiUnit for AiDrone { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::ai_unit::AiUnitData` [INFO] [stderr] = note: required because it appears within the type `unit::ai_drone::AiDrone` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `std::sync::Weak: std::marker::Sync` [INFO] [stderr] --> src/unit/asteroid.rs:37:6 [INFO] [stderr] | [INFO] [stderr] 37 | impl Unit for Asteroid { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::cargo_item::CargoItemData` [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::asteroid::Asteroid` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `std::sync::Weak: std::marker::Sync` [INFO] [stderr] --> src/unit/asteroid.rs:37:6 [INFO] [stderr] | [INFO] [stderr] 37 | impl Unit for Asteroid { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::cargo_item::CargoItemData` [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::asteroid::Asteroid` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `std::sync::Weak: std::marker::Sync` [INFO] [stderr] --> src/unit/power_up.rs:28:6 [INFO] [stderr] | [INFO] [stderr] 28 | impl Unit for PowerUpData { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::cargo_item::CargoItemData` [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::power_up::PowerUpData` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `std::sync::Weak: std::marker::Sync` [INFO] [stderr] --> src/unit/power_up.rs:28:6 [INFO] [stderr] | [INFO] [stderr] 28 | impl Unit for PowerUpData { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::cargo_item::CargoItemData` [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::power_up::PowerUpData` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `std::sync::Weak: std::marker::Sync` [INFO] [stderr] --> src/unit/explosion.rs:129:6 [INFO] [stderr] | [INFO] [stderr] 129 | impl Unit for Explosion { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::cargo_item::CargoItemData` [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::explosion::Explosion` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `std::sync::Weak: std::marker::Sync` [INFO] [stderr] --> src/unit/explosion.rs:129:6 [INFO] [stderr] | [INFO] [stderr] 129 | impl Unit for Explosion { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::cargo_item::CargoItemData` [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::explosion::Explosion` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `std::sync::Weak: std::marker::Sync` [INFO] [stderr] --> src/unit/meteoroid.rs:24:6 [INFO] [stderr] | [INFO] [stderr] 24 | impl Unit for Meteoroid { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::cargo_item::CargoItemData` [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::meteoroid::Meteoroid` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `std::sync::Weak: std::marker::Sync` [INFO] [stderr] --> src/unit/meteoroid.rs:24:6 [INFO] [stderr] | [INFO] [stderr] 24 | impl Unit for Meteoroid { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::cargo_item::CargoItemData` [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::meteoroid::Meteoroid` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `std::sync::Weak: std::marker::Sync` [INFO] [stderr] --> src/unit/worm_hole.rs:51:6 [INFO] [stderr] | [INFO] [stderr] 51 | impl Unit for WormHole { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::cargo_item::CargoItemData` [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::worm_hole::WormHole` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `std::sync::Weak: std::marker::Sync` [INFO] [stderr] --> src/unit/worm_hole.rs:51:6 [INFO] [stderr] | [INFO] [stderr] 51 | impl Unit for WormHole { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::cargo_item::CargoItemData` [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::worm_hole::WormHole` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `std::sync::Weak: std::marker::Sync` [INFO] [stderr] --> src/unit/black_hole.rs:38:6 [INFO] [stderr] | [INFO] [stderr] 38 | impl Unit for BlackHole { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::cargo_item::CargoItemData` [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::black_hole::BlackHole` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `std::sync::Weak: std::marker::Sync` [INFO] [stderr] --> src/unit/black_hole.rs:38:6 [INFO] [stderr] | [INFO] [stderr] 38 | impl Unit for BlackHole { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::cargo_item::CargoItemData` [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::black_hole::BlackHole` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `std::sync::Weak: std::marker::Sync` [INFO] [stderr] --> src/unit/storm_whirl.rs:49:6 [INFO] [stderr] | [INFO] [stderr] 49 | impl Unit for StormWhirl { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::cargo_item::CargoItemData` [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::storm_whirl::StormWhirl` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `std::sync::Weak: std::marker::Sync` [INFO] [stderr] --> src/unit/storm_whirl.rs:49:6 [INFO] [stderr] | [INFO] [stderr] 49 | impl Unit for StormWhirl { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::cargo_item::CargoItemData` [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::storm_whirl::StormWhirl` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `item::cargo_item::CargoItemData: std::marker::Send` [INFO] [stderr] --> src/unit/ai_platform.rs:24:6 [INFO] [stderr] | [INFO] [stderr] 24 | impl Unit for AiPlatform { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::ai_unit::AiUnitData` [INFO] [stderr] = note: required because it appears within the type `unit::ai_platform::AiPlatform` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `item::cargo_item::CargoItemData: std::marker::Send` [INFO] [stderr] --> src/unit/ai_platform.rs:24:6 [INFO] [stderr] | [INFO] [stderr] 24 | impl Unit for AiPlatform { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::ai_unit::AiUnitData` [INFO] [stderr] = note: required because it appears within the type `unit::ai_platform::AiPlatform` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `item::cargo_item::CargoItemData: std::marker::Send` [INFO] [stderr] --> src/unit/ai_platform.rs:88:6 [INFO] [stderr] | [INFO] [stderr] 88 | impl AiUnit for AiPlatform { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::ai_unit::AiUnitData` [INFO] [stderr] = note: required because it appears within the type `unit::ai_platform::AiPlatform` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `item::cargo_item::CargoItemData: std::marker::Send` [INFO] [stderr] --> src/unit/ai_platform.rs:88:6 [INFO] [stderr] | [INFO] [stderr] 88 | impl AiUnit for AiPlatform { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::ai_unit::AiUnitData` [INFO] [stderr] = note: required because it appears within the type `unit::ai_platform::AiPlatform` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `std::sync::Weak: std::marker::Sync` [INFO] [stderr] --> src/unit/player_unit.rs:49:6 [INFO] [stderr] | [INFO] [stderr] 49 | impl PlayerUnit for PlayerUnitData { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::cargo_item::CargoItemData` [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::player_unit::PlayerUnitData` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `std::sync::Weak: std::marker::Sync` [INFO] [stderr] --> src/unit/player_unit.rs:49:6 [INFO] [stderr] | [INFO] [stderr] 49 | impl PlayerUnit for PlayerUnitData { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::cargo_item::CargoItemData` [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::player_unit::PlayerUnitData` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `std::sync::Weak: std::marker::Sync` [INFO] [stderr] --> src/unit/player_unit.rs:65:6 [INFO] [stderr] | [INFO] [stderr] 65 | impl Unit for PlayerUnitData { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::cargo_item::CargoItemData` [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::player_unit::PlayerUnitData` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `std::sync::Weak: std::marker::Sync` [INFO] [stderr] --> src/unit/player_unit.rs:65:6 [INFO] [stderr] | [INFO] [stderr] 65 | impl Unit for PlayerUnitData { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::cargo_item::CargoItemData` [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::player_unit::PlayerUnitData` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `item::cargo_item::CargoItemData: std::marker::Send` [INFO] [stderr] --> src/unit/player_ship.rs:24:6 [INFO] [stderr] | [INFO] [stderr] 24 | impl Unit for PlayerShip { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::player_unit::PlayerUnitData` [INFO] [stderr] = note: required because it appears within the type `unit::player_ship::PlayerShip` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `item::cargo_item::CargoItemData: std::marker::Send` [INFO] [stderr] --> src/unit/player_ship.rs:24:6 [INFO] [stderr] | [INFO] [stderr] 24 | impl Unit for PlayerShip { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::player_unit::PlayerUnitData` [INFO] [stderr] = note: required because it appears within the type `unit::player_ship::PlayerShip` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `item::cargo_item::CargoItemData: std::marker::Send` [INFO] [stderr] --> src/unit/player_ship.rs:88:6 [INFO] [stderr] | [INFO] [stderr] 88 | impl PlayerUnit for PlayerShip { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::player_unit::PlayerUnitData` [INFO] [stderr] = note: required because it appears within the type `unit::player_ship::PlayerShip` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `item::cargo_item::CargoItemData: std::marker::Send` [INFO] [stderr] --> src/unit/player_ship.rs:88:6 [INFO] [stderr] | [INFO] [stderr] 88 | impl PlayerUnit for PlayerShip { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::player_unit::PlayerUnitData` [INFO] [stderr] = note: required because it appears within the type `unit::player_ship::PlayerShip` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `item::cargo_item::CargoItemData: std::marker::Send` [INFO] [stderr] --> src/unit/player_base.rs:24:6 [INFO] [stderr] | [INFO] [stderr] 24 | impl Unit for PlayerBase { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::player_unit::PlayerUnitData` [INFO] [stderr] = note: required because it appears within the type `unit::player_base::PlayerBase` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `item::cargo_item::CargoItemData: std::marker::Send` [INFO] [stderr] --> src/unit/player_base.rs:24:6 [INFO] [stderr] | [INFO] [stderr] 24 | impl Unit for PlayerBase { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::player_unit::PlayerUnitData` [INFO] [stderr] = note: required because it appears within the type `unit::player_base::PlayerBase` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `item::cargo_item::CargoItemData: std::marker::Send` [INFO] [stderr] --> src/unit/player_base.rs:88:6 [INFO] [stderr] | [INFO] [stderr] 88 | impl PlayerUnit for PlayerBase { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::player_unit::PlayerUnitData` [INFO] [stderr] = note: required because it appears within the type `unit::player_base::PlayerBase` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `item::cargo_item::CargoItemData: std::marker::Send` [INFO] [stderr] --> src/unit/player_base.rs:88:6 [INFO] [stderr] | [INFO] [stderr] 88 | impl PlayerUnit for PlayerBase { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::player_unit::PlayerUnitData` [INFO] [stderr] = note: required because it appears within the type `unit::player_base::PlayerBase` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `item::cargo_item::CargoItemData: std::marker::Send` [INFO] [stderr] --> src/unit/player_probe.rs:24:6 [INFO] [stderr] | [INFO] [stderr] 24 | impl Unit for PlayerProbe { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::player_unit::PlayerUnitData` [INFO] [stderr] = note: required because it appears within the type `unit::player_probe::PlayerProbe` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `item::cargo_item::CargoItemData: std::marker::Send` [INFO] [stderr] --> src/unit/player_probe.rs:24:6 [INFO] [stderr] | [INFO] [stderr] 24 | impl Unit for PlayerProbe { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::player_unit::PlayerUnitData` [INFO] [stderr] = note: required because it appears within the type `unit::player_probe::PlayerProbe` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `item::cargo_item::CargoItemData: std::marker::Send` [INFO] [stderr] --> src/unit/player_probe.rs:88:6 [INFO] [stderr] | [INFO] [stderr] 88 | impl PlayerUnit for PlayerProbe { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::player_unit::PlayerUnitData` [INFO] [stderr] = note: required because it appears within the type `unit::player_probe::PlayerProbe` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `item::cargo_item::CargoItemData: std::marker::Send` [INFO] [stderr] --> src/unit/player_probe.rs:88:6 [INFO] [stderr] | [INFO] [stderr] 88 | impl PlayerUnit for PlayerProbe { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::player_unit::PlayerUnitData` [INFO] [stderr] = note: required because it appears within the type `unit::player_probe::PlayerProbe` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `item::cargo_item::CargoItemData: std::marker::Send` [INFO] [stderr] --> src/unit/player_drone.rs:24:6 [INFO] [stderr] | [INFO] [stderr] 24 | impl Unit for PlayerDrone { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::player_unit::PlayerUnitData` [INFO] [stderr] = note: required because it appears within the type `unit::player_drone::PlayerDrone` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `item::cargo_item::CargoItemData: std::marker::Send` [INFO] [stderr] --> src/unit/player_drone.rs:24:6 [INFO] [stderr] | [INFO] [stderr] 24 | impl Unit for PlayerDrone { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::player_unit::PlayerUnitData` [INFO] [stderr] = note: required because it appears within the type `unit::player_drone::PlayerDrone` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `item::cargo_item::CargoItemData: std::marker::Send` [INFO] [stderr] --> src/unit/player_drone.rs:88:6 [INFO] [stderr] | [INFO] [stderr] 88 | impl PlayerUnit for PlayerDrone { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::player_unit::PlayerUnitData` [INFO] [stderr] = note: required because it appears within the type `unit::player_drone::PlayerDrone` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `item::cargo_item::CargoItemData: std::marker::Send` [INFO] [stderr] --> src/unit/player_drone.rs:88:6 [INFO] [stderr] | [INFO] [stderr] 88 | impl PlayerUnit for PlayerDrone { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::player_unit::PlayerUnitData` [INFO] [stderr] = note: required because it appears within the type `unit::player_drone::PlayerDrone` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `std::sync::Weak: std::marker::Sync` [INFO] [stderr] --> src/unit/pixel_cluster.rs:50:6 [INFO] [stderr] | [INFO] [stderr] 50 | impl Unit for PixelCluster { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::cargo_item::CargoItemData` [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::pixel_cluster::PixelCluster` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `std::sync::Weak: std::marker::Sync` [INFO] [stderr] --> src/unit/pixel_cluster.rs:50:6 [INFO] [stderr] | [INFO] [stderr] 50 | impl Unit for PixelCluster { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::cargo_item::CargoItemData` [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::pixel_cluster::PixelCluster` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `std::sync::Weak: std::marker::Sync` [INFO] [stderr] --> src/unit/mission_target.rs:75:6 [INFO] [stderr] | [INFO] [stderr] 75 | impl Unit for MissionTarget { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::cargo_item::CargoItemData` [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::mission_target::MissionTarget` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `std::sync::Weak: std::marker::Sync` [INFO] [stderr] --> src/unit/mission_target.rs:75:6 [INFO] [stderr] | [INFO] [stderr] 75 | impl Unit for MissionTarget { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::cargo_item::CargoItemData` [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::mission_target::MissionTarget` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `item::cargo_item::CargoItemData: std::marker::Send` [INFO] [stderr] --> src/unit/haste_power_up.rs:24:6 [INFO] [stderr] | [INFO] [stderr] 24 | impl Unit for HastePowerUp { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::power_up::PowerUpData` [INFO] [stderr] = note: required because it appears within the type `unit::haste_power_up::HastePowerUp` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `item::cargo_item::CargoItemData: std::marker::Send` [INFO] [stderr] --> src/unit/haste_power_up.rs:24:6 [INFO] [stderr] | [INFO] [stderr] 24 | impl Unit for HastePowerUp { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::power_up::PowerUpData` [INFO] [stderr] = note: required because it appears within the type `unit::haste_power_up::HastePowerUp` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `item::cargo_item::CargoItemData: std::marker::Send` [INFO] [stderr] --> src/unit/haste_power_up.rs:88:6 [INFO] [stderr] | [INFO] [stderr] 88 | impl PowerUp for HastePowerUp { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::power_up::PowerUpData` [INFO] [stderr] = note: required because it appears within the type `unit::haste_power_up::HastePowerUp` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `item::cargo_item::CargoItemData: std::marker::Send` [INFO] [stderr] --> src/unit/haste_power_up.rs:88:6 [INFO] [stderr] | [INFO] [stderr] 88 | impl PowerUp for HastePowerUp { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::power_up::PowerUpData` [INFO] [stderr] = note: required because it appears within the type `unit::haste_power_up::HastePowerUp` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `item::cargo_item::CargoItemData: std::marker::Send` [INFO] [stderr] --> src/unit/cloak_power_up.rs:24:6 [INFO] [stderr] | [INFO] [stderr] 24 | impl Unit for CloakPowerUp { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::power_up::PowerUpData` [INFO] [stderr] = note: required because it appears within the type `unit::cloak_power_up::CloakPowerUp` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `item::cargo_item::CargoItemData: std::marker::Send` [INFO] [stderr] --> src/unit/cloak_power_up.rs:24:6 [INFO] [stderr] | [INFO] [stderr] 24 | impl Unit for CloakPowerUp { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::power_up::PowerUpData` [INFO] [stderr] = note: required because it appears within the type `unit::cloak_power_up::CloakPowerUp` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `item::cargo_item::CargoItemData: std::marker::Send` [INFO] [stderr] --> src/unit/cloak_power_up.rs:88:6 [INFO] [stderr] | [INFO] [stderr] 88 | impl PowerUp for CloakPowerUp { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::power_up::PowerUpData` [INFO] [stderr] = note: required because it appears within the type `unit::cloak_power_up::CloakPowerUp` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `item::cargo_item::CargoItemData: std::marker::Send` [INFO] [stderr] --> src/unit/cloak_power_up.rs:88:6 [INFO] [stderr] | [INFO] [stderr] 88 | impl PowerUp for CloakPowerUp { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::power_up::PowerUpData` [INFO] [stderr] = note: required because it appears within the type `unit::cloak_power_up::CloakPowerUp` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `item::cargo_item::CargoItemData: std::marker::Send` [INFO] [stderr] --> src/unit/player_platform.rs:25:6 [INFO] [stderr] | [INFO] [stderr] 25 | impl Unit for PlayerPlatform { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::player_unit::PlayerUnitData` [INFO] [stderr] = note: required because it appears within the type `unit::player_platform::PlayerPlatform` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `item::cargo_item::CargoItemData: std::marker::Send` [INFO] [stderr] --> src/unit/player_platform.rs:25:6 [INFO] [stderr] | [INFO] [stderr] 25 | impl Unit for PlayerPlatform { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::player_unit::PlayerUnitData` [INFO] [stderr] = note: required because it appears within the type `unit::player_platform::PlayerPlatform` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `item::cargo_item::CargoItemData: std::marker::Send` [INFO] [stderr] --> src/unit/player_platform.rs:89:6 [INFO] [stderr] | [INFO] [stderr] 89 | impl PlayerUnit for PlayerPlatform { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::player_unit::PlayerUnitData` [INFO] [stderr] = note: required because it appears within the type `unit::player_platform::PlayerPlatform` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `item::cargo_item::CargoItemData: std::marker::Send` [INFO] [stderr] --> src/unit/player_platform.rs:89:6 [INFO] [stderr] | [INFO] [stderr] 89 | impl PlayerUnit for PlayerPlatform { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::player_unit::PlayerUnitData` [INFO] [stderr] = note: required because it appears within the type `unit::player_platform::PlayerPlatform` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `std::sync::Weak: std::marker::Sync` [INFO] [stderr] --> src/unit/space_jelly_fish.rs:42:6 [INFO] [stderr] | [INFO] [stderr] 42 | impl Unit for SpaceJellyFish { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::cargo_item::CargoItemData` [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::space_jelly_fish::SpaceJellyFish` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `std::sync::Weak: std::marker::Sync` [INFO] [stderr] --> src/unit/space_jelly_fish.rs:42:6 [INFO] [stderr] | [INFO] [stderr] 42 | impl Unit for SpaceJellyFish { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::cargo_item::CargoItemData` [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::space_jelly_fish::SpaceJellyFish` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `item::cargo_item::CargoItemData: std::marker::Send` [INFO] [stderr] --> src/unit/refreshing_power_up.rs:28:6 [INFO] [stderr] | [INFO] [stderr] 28 | impl RefreshingPowerUp for RefreshingPowerUpData { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::power_up::PowerUpData` [INFO] [stderr] = note: required because it appears within the type `unit::refreshing_power_up::RefreshingPowerUpData` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `item::cargo_item::CargoItemData: std::marker::Send` [INFO] [stderr] --> src/unit/refreshing_power_up.rs:28:6 [INFO] [stderr] | [INFO] [stderr] 28 | impl RefreshingPowerUp for RefreshingPowerUpData { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::power_up::PowerUpData` [INFO] [stderr] = note: required because it appears within the type `unit::refreshing_power_up::RefreshingPowerUpData` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `item::cargo_item::CargoItemData: std::marker::Send` [INFO] [stderr] --> src/unit/refreshing_power_up.rs:36:6 [INFO] [stderr] | [INFO] [stderr] 36 | impl Unit for RefreshingPowerUpData { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::power_up::PowerUpData` [INFO] [stderr] = note: required because it appears within the type `unit::refreshing_power_up::RefreshingPowerUpData` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `item::cargo_item::CargoItemData: std::marker::Send` [INFO] [stderr] --> src/unit/refreshing_power_up.rs:36:6 [INFO] [stderr] | [INFO] [stderr] 36 | impl Unit for RefreshingPowerUpData { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::power_up::PowerUpData` [INFO] [stderr] = note: required because it appears within the type `unit::refreshing_power_up::RefreshingPowerUpData` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `item::cargo_item::CargoItemData: std::marker::Send` [INFO] [stderr] --> src/unit/refreshing_power_up.rs:100:6 [INFO] [stderr] | [INFO] [stderr] 100 | impl PowerUp for RefreshingPowerUpData { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::power_up::PowerUpData` [INFO] [stderr] = note: required because it appears within the type `unit::refreshing_power_up::RefreshingPowerUpData` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `item::cargo_item::CargoItemData: std::marker::Send` [INFO] [stderr] --> src/unit/refreshing_power_up.rs:100:6 [INFO] [stderr] | [INFO] [stderr] 100 | impl PowerUp for RefreshingPowerUpData { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::power_up::PowerUpData` [INFO] [stderr] = note: required because it appears within the type `unit::refreshing_power_up::RefreshingPowerUpData` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `item::cargo_item::CargoItemData: std::marker::Send` [INFO] [stderr] --> src/unit/quad_damage_power_up.rs:24:6 [INFO] [stderr] | [INFO] [stderr] 24 | impl Unit for QuadDamagePowerUp { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::power_up::PowerUpData` [INFO] [stderr] = note: required because it appears within the type `unit::quad_damage_power_up::QuadDamagePowerUp` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `item::cargo_item::CargoItemData: std::marker::Send` [INFO] [stderr] --> src/unit/quad_damage_power_up.rs:24:6 [INFO] [stderr] | [INFO] [stderr] 24 | impl Unit for QuadDamagePowerUp { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::power_up::PowerUpData` [INFO] [stderr] = note: required because it appears within the type `unit::quad_damage_power_up::QuadDamagePowerUp` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `item::cargo_item::CargoItemData: std::marker::Send` [INFO] [stderr] --> src/unit/quad_damage_power_up.rs:88:6 [INFO] [stderr] | [INFO] [stderr] 88 | impl PowerUp for QuadDamagePowerUp { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::power_up::PowerUpData` [INFO] [stderr] = note: required because it appears within the type `unit::quad_damage_power_up::QuadDamagePowerUp` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `item::cargo_item::CargoItemData: std::marker::Send` [INFO] [stderr] --> src/unit/quad_damage_power_up.rs:88:6 [INFO] [stderr] | [INFO] [stderr] 88 | impl PowerUp for QuadDamagePowerUp { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::power_up::PowerUpData` [INFO] [stderr] = note: required because it appears within the type `unit::quad_damage_power_up::QuadDamagePowerUp` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `std::sync::Weak: std::marker::Sync` [INFO] [stderr] --> src/unit/storm_commencing_whirl.rs:62:6 [INFO] [stderr] | [INFO] [stderr] 62 | impl Unit for StormCommencingWhirl { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::cargo_item::CargoItemData` [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::storm_commencing_whirl::StormCommencingWhirl` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `std::sync::Weak: std::marker::Sync` [INFO] [stderr] --> src/unit/storm_commencing_whirl.rs:62:6 [INFO] [stderr] | [INFO] [stderr] 62 | impl Unit for StormCommencingWhirl { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::cargo_item::CargoItemData` [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::storm_commencing_whirl::StormCommencingWhirl` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `std::sync::Weak: std::marker::Sync` [INFO] [stderr] --> src/unit/space_jelly_fish_slime.rs:56:6 [INFO] [stderr] | [INFO] [stderr] 56 | impl Unit for SpaceJellyFishSlime { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::cargo_item::CargoItemData` [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::space_jelly_fish_slime::SpaceJellyFishSlime` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `std::sync::Weak: std::marker::Sync` [INFO] [stderr] --> src/unit/space_jelly_fish_slime.rs:56:6 [INFO] [stderr] | [INFO] [stderr] 56 | impl Unit for SpaceJellyFishSlime { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::cargo_item::CargoItemData` [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::space_jelly_fish_slime::SpaceJellyFishSlime` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `item::cargo_item::CargoItemData: std::marker::Send` [INFO] [stderr] --> src/unit/double_damage_power_up.rs:24:6 [INFO] [stderr] | [INFO] [stderr] 24 | impl Unit for DoubleDamagePowerUp { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::power_up::PowerUpData` [INFO] [stderr] = note: required because it appears within the type `unit::double_damage_power_up::DoubleDamagePowerUp` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `item::cargo_item::CargoItemData: std::marker::Send` [INFO] [stderr] --> src/unit/double_damage_power_up.rs:24:6 [INFO] [stderr] | [INFO] [stderr] 24 | impl Unit for DoubleDamagePowerUp { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::power_up::PowerUpData` [INFO] [stderr] = note: required because it appears within the type `unit::double_damage_power_up::DoubleDamagePowerUp` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `item::cargo_item::CargoItemData: std::marker::Send` [INFO] [stderr] --> src/unit/double_damage_power_up.rs:88:6 [INFO] [stderr] | [INFO] [stderr] 88 | impl PowerUp for DoubleDamagePowerUp { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::power_up::PowerUpData` [INFO] [stderr] = note: required because it appears within the type `unit::double_damage_power_up::DoubleDamagePowerUp` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `item::cargo_item::CargoItemData: std::marker::Send` [INFO] [stderr] --> src/unit/double_damage_power_up.rs:88:6 [INFO] [stderr] | [INFO] [stderr] 88 | impl PowerUp for DoubleDamagePowerUp { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::power_up::PowerUpData` [INFO] [stderr] = note: required because it appears within the type `unit::double_damage_power_up::DoubleDamagePowerUp` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `item::nebula_cargo_item::NebulaCargoItem: std::marker::Send` [INFO] [stderr] --> src/unit/hull_refreshing_power_up.rs:24:6 [INFO] [stderr] | [INFO] [stderr] 24 | impl Unit for HullRefreshingPowerUp { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::power_up::PowerUpData` [INFO] [stderr] = note: required because it appears within the type `unit::refreshing_power_up::RefreshingPowerUpData` [INFO] [stderr] = note: required because it appears within the type `unit::hull_refreshing_power_up::HullRefreshingPowerUp` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `item::nebula_cargo_item::NebulaCargoItem: std::marker::Send` [INFO] [stderr] --> src/unit/hull_refreshing_power_up.rs:24:6 [INFO] [stderr] | [INFO] [stderr] 24 | impl Unit for HullRefreshingPowerUp { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::power_up::PowerUpData` [INFO] [stderr] = note: required because it appears within the type `unit::refreshing_power_up::RefreshingPowerUpData` [INFO] [stderr] = note: required because it appears within the type `unit::hull_refreshing_power_up::HullRefreshingPowerUp` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `item::nebula_cargo_item::NebulaCargoItem: std::marker::Send` [INFO] [stderr] --> src/unit/hull_refreshing_power_up.rs:88:6 [INFO] [stderr] | [INFO] [stderr] 88 | impl PowerUp for HullRefreshingPowerUp { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::power_up::PowerUpData` [INFO] [stderr] = note: required because it appears within the type `unit::refreshing_power_up::RefreshingPowerUpData` [INFO] [stderr] = note: required because it appears within the type `unit::hull_refreshing_power_up::HullRefreshingPowerUp` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `item::nebula_cargo_item::NebulaCargoItem: std::marker::Send` [INFO] [stderr] --> src/unit/hull_refreshing_power_up.rs:88:6 [INFO] [stderr] | [INFO] [stderr] 88 | impl PowerUp for HullRefreshingPowerUp { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::power_up::PowerUpData` [INFO] [stderr] = note: required because it appears within the type `unit::refreshing_power_up::RefreshingPowerUpData` [INFO] [stderr] = note: required because it appears within the type `unit::hull_refreshing_power_up::HullRefreshingPowerUp` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `item::nebula_cargo_item::NebulaCargoItem: std::marker::Send` [INFO] [stderr] --> src/unit/hull_refreshing_power_up.rs:94:6 [INFO] [stderr] | [INFO] [stderr] 94 | impl RefreshingPowerUp for HullRefreshingPowerUp { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::power_up::PowerUpData` [INFO] [stderr] = note: required because it appears within the type `unit::refreshing_power_up::RefreshingPowerUpData` [INFO] [stderr] = note: required because it appears within the type `unit::hull_refreshing_power_up::HullRefreshingPowerUp` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `item::nebula_cargo_item::NebulaCargoItem: std::marker::Send` [INFO] [stderr] --> src/unit/hull_refreshing_power_up.rs:94:6 [INFO] [stderr] | [INFO] [stderr] 94 | impl RefreshingPowerUp for HullRefreshingPowerUp { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::power_up::PowerUpData` [INFO] [stderr] = note: required because it appears within the type `unit::refreshing_power_up::RefreshingPowerUpData` [INFO] [stderr] = note: required because it appears within the type `unit::hull_refreshing_power_up::HullRefreshingPowerUp` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `item::nebula_cargo_item::NebulaCargoItem: std::marker::Send` [INFO] [stderr] --> src/unit/ions_refreshing_power_up.rs:25:6 [INFO] [stderr] | [INFO] [stderr] 25 | impl Unit for IonsRefreshingPowerUp { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::power_up::PowerUpData` [INFO] [stderr] = note: required because it appears within the type `unit::refreshing_power_up::RefreshingPowerUpData` [INFO] [stderr] = note: required because it appears within the type `unit::ions_refreshing_power_up::IonsRefreshingPowerUp` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `item::nebula_cargo_item::NebulaCargoItem: std::marker::Send` [INFO] [stderr] --> src/unit/ions_refreshing_power_up.rs:25:6 [INFO] [stderr] | [INFO] [stderr] 25 | impl Unit for IonsRefreshingPowerUp { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::power_up::PowerUpData` [INFO] [stderr] = note: required because it appears within the type `unit::refreshing_power_up::RefreshingPowerUpData` [INFO] [stderr] = note: required because it appears within the type `unit::ions_refreshing_power_up::IonsRefreshingPowerUp` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `item::nebula_cargo_item::NebulaCargoItem: std::marker::Send` [INFO] [stderr] --> src/unit/ions_refreshing_power_up.rs:89:6 [INFO] [stderr] | [INFO] [stderr] 89 | impl PowerUp for IonsRefreshingPowerUp { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::power_up::PowerUpData` [INFO] [stderr] = note: required because it appears within the type `unit::refreshing_power_up::RefreshingPowerUpData` [INFO] [stderr] = note: required because it appears within the type `unit::ions_refreshing_power_up::IonsRefreshingPowerUp` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `item::nebula_cargo_item::NebulaCargoItem: std::marker::Send` [INFO] [stderr] --> src/unit/ions_refreshing_power_up.rs:89:6 [INFO] [stderr] | [INFO] [stderr] 89 | impl PowerUp for IonsRefreshingPowerUp { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::power_up::PowerUpData` [INFO] [stderr] = note: required because it appears within the type `unit::refreshing_power_up::RefreshingPowerUpData` [INFO] [stderr] = note: required because it appears within the type `unit::ions_refreshing_power_up::IonsRefreshingPowerUp` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `item::nebula_cargo_item::NebulaCargoItem: std::marker::Send` [INFO] [stderr] --> src/unit/ions_refreshing_power_up.rs:95:6 [INFO] [stderr] | [INFO] [stderr] 95 | impl RefreshingPowerUp for IonsRefreshingPowerUp { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::power_up::PowerUpData` [INFO] [stderr] = note: required because it appears within the type `unit::refreshing_power_up::RefreshingPowerUpData` [INFO] [stderr] = note: required because it appears within the type `unit::ions_refreshing_power_up::IonsRefreshingPowerUp` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `item::nebula_cargo_item::NebulaCargoItem: std::marker::Send` [INFO] [stderr] --> src/unit/ions_refreshing_power_up.rs:95:6 [INFO] [stderr] | [INFO] [stderr] 95 | impl RefreshingPowerUp for IonsRefreshingPowerUp { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::power_up::PowerUpData` [INFO] [stderr] = note: required because it appears within the type `unit::refreshing_power_up::RefreshingPowerUpData` [INFO] [stderr] = note: required because it appears within the type `unit::ions_refreshing_power_up::IonsRefreshingPowerUp` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `item::cargo_item::CargoItemData: std::marker::Send` [INFO] [stderr] --> src/unit/total_refreshing_power_up.rs:24:6 [INFO] [stderr] | [INFO] [stderr] 24 | impl Unit for TotalRefreshingPowerUp { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::power_up::PowerUpData` [INFO] [stderr] = note: required because it appears within the type `unit::total_refreshing_power_up::TotalRefreshingPowerUp` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `item::cargo_item::CargoItemData: std::marker::Send` [INFO] [stderr] --> src/unit/total_refreshing_power_up.rs:24:6 [INFO] [stderr] | [INFO] [stderr] 24 | impl Unit for TotalRefreshingPowerUp { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::power_up::PowerUpData` [INFO] [stderr] = note: required because it appears within the type `unit::total_refreshing_power_up::TotalRefreshingPowerUp` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `item::cargo_item::CargoItemData: std::marker::Send` [INFO] [stderr] --> src/unit/total_refreshing_power_up.rs:88:6 [INFO] [stderr] | [INFO] [stderr] 88 | impl PowerUp for TotalRefreshingPowerUp { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::power_up::PowerUpData` [INFO] [stderr] = note: required because it appears within the type `unit::total_refreshing_power_up::TotalRefreshingPowerUp` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `item::cargo_item::CargoItemData: std::marker::Send` [INFO] [stderr] --> src/unit/total_refreshing_power_up.rs:88:6 [INFO] [stderr] | [INFO] [stderr] 88 | impl PowerUp for TotalRefreshingPowerUp { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because it appears within the type `item::nebula_cargo_item::NebulaCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::power_up::PowerUpData` [INFO] [stderr] = note: required because it appears within the type `unit::total_refreshing_power_up::TotalRefreshingPowerUp` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `item::nebula_cargo_item::NebulaCargoItem: std::marker::Send` [INFO] [stderr] --> src/unit/shield_refreshing_power_up.rs:24:6 [INFO] [stderr] | [INFO] [stderr] 24 | impl Unit for ShieldRefreshingPowerUp { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::power_up::PowerUpData` [INFO] [stderr] = note: required because it appears within the type `unit::refreshing_power_up::RefreshingPowerUpData` [INFO] [stderr] = note: required because it appears within the type `unit::shield_refreshing_power_up::ShieldRefreshingPowerUp` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `item::nebula_cargo_item::NebulaCargoItem: std::marker::Send` [INFO] [stderr] --> src/unit/shield_refreshing_power_up.rs:24:6 [INFO] [stderr] | [INFO] [stderr] 24 | impl Unit for ShieldRefreshingPowerUp { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::power_up::PowerUpData` [INFO] [stderr] = note: required because it appears within the type `unit::refreshing_power_up::RefreshingPowerUpData` [INFO] [stderr] = note: required because it appears within the type `unit::shield_refreshing_power_up::ShieldRefreshingPowerUp` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `item::nebula_cargo_item::NebulaCargoItem: std::marker::Send` [INFO] [stderr] --> src/unit/shield_refreshing_power_up.rs:88:6 [INFO] [stderr] | [INFO] [stderr] 88 | impl PowerUp for ShieldRefreshingPowerUp { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::power_up::PowerUpData` [INFO] [stderr] = note: required because it appears within the type `unit::refreshing_power_up::RefreshingPowerUpData` [INFO] [stderr] = note: required because it appears within the type `unit::shield_refreshing_power_up::ShieldRefreshingPowerUp` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `item::nebula_cargo_item::NebulaCargoItem: std::marker::Send` [INFO] [stderr] --> src/unit/shield_refreshing_power_up.rs:88:6 [INFO] [stderr] | [INFO] [stderr] 88 | impl PowerUp for ShieldRefreshingPowerUp { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::power_up::PowerUpData` [INFO] [stderr] = note: required because it appears within the type `unit::refreshing_power_up::RefreshingPowerUpData` [INFO] [stderr] = note: required because it appears within the type `unit::shield_refreshing_power_up::ShieldRefreshingPowerUp` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `item::nebula_cargo_item::NebulaCargoItem: std::marker::Send` [INFO] [stderr] --> src/unit/shield_refreshing_power_up.rs:94:6 [INFO] [stderr] | [INFO] [stderr] 94 | impl RefreshingPowerUp for ShieldRefreshingPowerUp { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::power_up::PowerUpData` [INFO] [stderr] = note: required because it appears within the type `unit::refreshing_power_up::RefreshingPowerUpData` [INFO] [stderr] = note: required because it appears within the type `unit::shield_refreshing_power_up::ShieldRefreshingPowerUp` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `item::nebula_cargo_item::NebulaCargoItem: std::marker::Send` [INFO] [stderr] --> src/unit/shield_refreshing_power_up.rs:94:6 [INFO] [stderr] | [INFO] [stderr] 94 | impl RefreshingPowerUp for ShieldRefreshingPowerUp { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::power_up::PowerUpData` [INFO] [stderr] = note: required because it appears within the type `unit::refreshing_power_up::RefreshingPowerUpData` [INFO] [stderr] = note: required because it appears within the type `unit::shield_refreshing_power_up::ShieldRefreshingPowerUp` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `item::nebula_cargo_item::NebulaCargoItem: std::marker::Send` [INFO] [stderr] --> src/unit/energy_refreshing_power_up.rs:24:6 [INFO] [stderr] | [INFO] [stderr] 24 | impl Unit for EnergyRefreshingPowerUp { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::power_up::PowerUpData` [INFO] [stderr] = note: required because it appears within the type `unit::refreshing_power_up::RefreshingPowerUpData` [INFO] [stderr] = note: required because it appears within the type `unit::energy_refreshing_power_up::EnergyRefreshingPowerUp` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `item::nebula_cargo_item::NebulaCargoItem: std::marker::Send` [INFO] [stderr] --> src/unit/energy_refreshing_power_up.rs:24:6 [INFO] [stderr] | [INFO] [stderr] 24 | impl Unit for EnergyRefreshingPowerUp { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>>` [INFO] [stderr] = note: required because it appears within the type `tournament::Tournament` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `connector::Connector` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because it appears within the type `vector::Vector` [INFO] [stderr] = note: required because it appears within the type `unit::unit::UnitData` [INFO] [stderr] = note: required because it appears within the type `unit::power_up::PowerUpData` [INFO] [stderr] = note: required because it appears within the type `unit::refreshing_power_up::RefreshingPowerUpData` [INFO] [stderr] = note: required because it appears within the type `unit::energy_refreshing_power_up::EnergyRefreshingPowerUp` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `item::nebula_cargo_item::NebulaCargoItem: std::marker::Send` [INFO] [stderr] --> src/unit/energy_refreshing_power_up.rs:88:6 [INFO] [stderr] | [INFO] [stderr] 88 | impl PowerUp for EnergyRefreshingPowerUp { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider adding a `#![recursion_limit="128"]` attribute to your crate [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `item::any_cargo_item::AnyCargoItem` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfoMut` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because it appears within the type `unit::controllable_info::ControllableInfo` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `index_list::IndexList` [INFO] [stderr] = note: required because it appears within the type `universal_holder::UniversalHolder` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>` [INFO] [stderr] = note: required because it appears within the type `player::Player` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc` [INFO] [stderr] = note: required because it appears within the type `std::option::Option>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique>>` [INFO] [stderr] = note: required because it appears within the type `alloc::raw_vec::RawVec>>` [INFO] [stderr] = note: required because it appears within the type `std::vec::Vec>>` [INFO] [stderr] = note: required because it appears within the type `managed_array::ManagedArray>` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::RwLock>>` [INFO] [stderr] = note: required because it appears within the type `universe_group::UniverseGroup` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Weak` [INFO] [stderr] = note: required because it appears within the type `team::Team` [INFO] [stderr] = note: required because it appears within the type `tournament_team::TournamentTeam` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::RwLock` [INFO] [stderr] = note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc>` [WARN] too many lines in the log, truncating it