cargo build --target wasm32-unknown-unknown
Compiling bevy_midi v0.6.0
error[E0277]: `*mut u8` cannot be sent between threads safely
--> /Users/panopticon/.cargo/registry/src/index.crates.io-6f17d22bba15001f/bevy_midi-0.6.0/src/input.rs:49:10
|
49 | #[derive(Resource)]
| ^^^^^^^^ `*mut u8` cannot be sent between threads safely
|
= help: within `input::Message`, the trait `Send` is not implemented for `*mut u8`
= note: required because it appears within the type `PhantomData<*mut u8>`
= note: required because it appears within the type `JsValue`
= note: required because it appears within the type `Object`
= note: required because it appears within the type `EventTarget`
= note: required because it appears within the type `MidiPort`
= note: required because it appears within the type `MidiInput`
= note: required because it appears within the type `MidiInputPort`
= note: required because it appears within the type `MidiInputPort`
note: required because it appears within the type `Message`
--> /Users/panopticon/.cargo/registry/src/index.crates.io-6f17d22bba15001f/bevy_midi-0.6.0/src/input.rs:184:6
|
184 | enum Message {
| ^^^^^^^
= note: required for `crossbeam_channel::Sender<input::Message>` to implement `Sync`
note: required because it appears within the type `MidiInput`
--> /Users/panopticon/.cargo/registry/src/index.crates.io-6f17d22bba15001f/bevy_midi-0.6.0/src/input.rs:50:12
|
50 | pub struct MidiInput {
| ^^^^^^^^^
= help: see issue #48214
= note: this error originates in the derive macro `Resource` (in Nightly builds, run with -Z macro-backtrace for more info)
error[E0277]: `*mut u8` cannot be shared between threads safely
--> /Users/panopticon/.cargo/registry/src/index.crates.io-6f17d22bba15001f/bevy_midi-0.6.0/src/input.rs:49:10
|
49 | #[derive(Resource)]
| ^^^^^^^^ `*mut u8` cannot be shared between threads safely
|
= help: within `(std::string::String, MidiInputPort)`, the trait `Sync` is not implemented for `*mut u8`
= note: required because it appears within the type `PhantomData<*mut u8>`
= note: required because it appears within the type `JsValue`
= note: required because it appears within the type `Object`
= note: required because it appears within the type `EventTarget`
= note: required because it appears within the type `MidiPort`
= note: required because it appears within the type `MidiInput`
= note: required because it appears within the type `MidiInputPort`
= note: required because it appears within the type `MidiInputPort`
= note: required because it appears within the type `(String, MidiInputPort)`
= note: required for `Unique<(std::string::String, MidiInputPort)>` to implement `Sync`
= note: required because it appears within the type `RawVec<(String, MidiInputPort)>`
= note: required because it appears within the type `Vec<(String, MidiInputPort)>`
note: required because it appears within the type `MidiInput`
--> /Users/panopticon/.cargo/registry/src/index.crates.io-6f17d22bba15001f/bevy_midi-0.6.0/src/input.rs:50:12
|
50 | pub struct MidiInput {
| ^^^^^^^^^
= help: see issue #48214
= note: this error originates in the derive macro `Resource` (in Nightly builds, run with -Z macro-backtrace for more info)
error[E0277]: `*mut u8` cannot be sent between threads safely
--> /Users/panopticon/.cargo/registry/src/index.crates.io-6f17d22bba15001f/bevy_midi-0.6.0/src/input.rs:141:16
|
141 | mut input: ResMut<MidiInput>,
| ^^^^^^^^^^^^^^^^^ `*mut u8` cannot be sent between threads safely
|
= help: within `input::Message`, the trait `Send` is not implemented for `*mut u8`
= help: the trait `bevy::prelude::Resource` is implemented for `input::MidiInput`
= note: required because it appears within the type `PhantomData<*mut u8>`
= note: required because it appears within the type `JsValue`
= note: required because it appears within the type `Object`
= note: required because it appears within the type `EventTarget`
= note: required because it appears within the type `MidiPort`
= note: required because it appears within the type `MidiInput`
= note: required because it appears within the type `MidiInputPort`
= note: required because it appears within the type `MidiInputPort`
note: required because it appears within the type `Message`
--> /Users/panopticon/.cargo/registry/src/index.crates.io-6f17d22bba15001f/bevy_midi-0.6.0/src/input.rs:184:6
|
184 | enum Message {
| ^^^^^^^
= note: required for `crossbeam_channel::Sender<input::Message>` to implement `Send`
note: required because it appears within the type `MidiInput`
--> /Users/panopticon/.cargo/registry/src/index.crates.io-6f17d22bba15001f/bevy_midi-0.6.0/src/input.rs:50:12
|
50 | pub struct MidiInput {
| ^^^^^^^^^
note: required for `input::MidiInput` to implement `bevy::prelude::Resource`
--> /Users/panopticon/.cargo/registry/src/index.crates.io-6f17d22bba15001f/bevy_midi-0.6.0/src/input.rs:49:10
|
49 | #[derive(Resource)]
| ^^^^^^^^ unsatisfied trait bound introduced in this `derive` macro
50 | pub struct MidiInput {
| ^^^^^^^^^
note: required by a bound in `bevy::prelude::ResMut`
--> /Users/panopticon/.cargo/registry/src/index.crates.io-6f17d22bba15001f/bevy_ecs-0.10.1/src/change_detection.rs:428:35
|
428 | pub struct ResMut<'a, T: ?Sized + Resource> {
| ^^^^^^^^ required by this bound in `ResMut`
= note: this error originates in the derive macro `Resource` (in Nightly builds, run with -Z macro-backtrace for more info)
error[E0277]: `*mut u8` cannot be shared between threads safely
--> /Users/panopticon/.cargo/registry/src/index.crates.io-6f17d22bba15001f/bevy_midi-0.6.0/src/input.rs:141:16
|
141 | mut input: ResMut<MidiInput>,
| ^^^^^^^^^^^^^^^^^ `*mut u8` cannot be shared between threads safely
|
= help: within `(std::string::String, MidiInputPort)`, the trait `Sync` is not implemented for `*mut u8`
= help: the trait `bevy::prelude::Resource` is implemented for `input::MidiInput`
= note: required because it appears within the type `PhantomData<*mut u8>`
= note: required because it appears within the type `JsValue`
= note: required because it appears within the type `Object`
= note: required because it appears within the type `EventTarget`
= note: required because it appears within the type `MidiPort`
= note: required because it appears within the type `MidiInput`
= note: required because it appears within the type `MidiInputPort`
= note: required because it appears within the type `MidiInputPort`
= note: required because it appears within the type `(String, MidiInputPort)`
= note: required for `Unique<(std::string::String, MidiInputPort)>` to implement `Sync`
= note: required because it appears within the type `RawVec<(String, MidiInputPort)>`
= note: required because it appears within the type `Vec<(String, MidiInputPort)>`
note: required because it appears within the type `MidiInput`
--> /Users/panopticon/.cargo/registry/src/index.crates.io-6f17d22bba15001f/bevy_midi-0.6.0/src/input.rs:50:12
|
50 | pub struct MidiInput {
| ^^^^^^^^^
note: required for `input::MidiInput` to implement `bevy::prelude::Resource`
--> /Users/panopticon/.cargo/registry/src/index.crates.io-6f17d22bba15001f/bevy_midi-0.6.0/src/input.rs:49:10
|
49 | #[derive(Resource)]
| ^^^^^^^^ unsatisfied trait bound introduced in this `derive` macro
50 | pub struct MidiInput {
| ^^^^^^^^^
note: required by a bound in `bevy::prelude::ResMut`
--> /Users/panopticon/.cargo/registry/src/index.crates.io-6f17d22bba15001f/bevy_ecs-0.10.1/src/change_detection.rs:428:35
|
428 | pub struct ResMut<'a, T: ?Sized + Resource> {
| ^^^^^^^^ required by this bound in `ResMut`
= note: this error originates in the derive macro `Resource` (in Nightly builds, run with -Z macro-backtrace for more info)
error[E0277]: `*mut u8` cannot be sent between threads safely
--> /Users/panopticon/.cargo/registry/src/index.crates.io-6f17d22bba15001f/bevy_midi-0.6.0/src/output.rs:41:10
|
41 | #[derive(Resource)]
| ^^^^^^^^ `*mut u8` cannot be sent between threads safely
|
= help: within `output::Message`, the trait `Send` is not implemented for `*mut u8`
= note: required because it appears within the type `PhantomData<*mut u8>`
= note: required because it appears within the type `JsValue`
= note: required because it appears within the type `Object`
= note: required because it appears within the type `EventTarget`
= note: required because it appears within the type `MidiPort`
= note: required because it appears within the type `MidiOutput`
= note: required because it appears within the type `MidiOutputPort`
= note: required because it appears within the type `MidiOutputPort`
note: required because it appears within the type `Message`
--> /Users/panopticon/.cargo/registry/src/index.crates.io-6f17d22bba15001f/bevy_midi-0.6.0/src/output.rs:173:6
|
173 | enum Message {
| ^^^^^^^
= note: required for `crossbeam_channel::Sender<output::Message>` to implement `Sync`
note: required because it appears within the type `MidiOutput`
--> /Users/panopticon/.cargo/registry/src/index.crates.io-6f17d22bba15001f/bevy_midi-0.6.0/src/output.rs:42:12
|
42 | pub struct MidiOutput {
| ^^^^^^^^^^
= help: see issue #48214
= note: this error originates in the derive macro `Resource` (in Nightly builds, run with -Z macro-backtrace for more info)
error[E0277]: `*mut u8` cannot be shared between threads safely
--> /Users/panopticon/.cargo/registry/src/index.crates.io-6f17d22bba15001f/bevy_midi-0.6.0/src/output.rs:41:10
|
41 | #[derive(Resource)]
| ^^^^^^^^ `*mut u8` cannot be shared between threads safely
|
= help: within `(std::string::String, MidiOutputPort)`, the trait `Sync` is not implemented for `*mut u8`
= note: required because it appears within the type `PhantomData<*mut u8>`
= note: required because it appears within the type `JsValue`
= note: required because it appears within the type `Object`
= note: required because it appears within the type `EventTarget`
= note: required because it appears within the type `MidiPort`
= note: required because it appears within the type `MidiOutput`
= note: required because it appears within the type `MidiOutputPort`
= note: required because it appears within the type `MidiOutputPort`
= note: required because it appears within the type `(String, MidiOutputPort)`
= note: required for `Unique<(std::string::String, MidiOutputPort)>` to implement `Sync`
= note: required because it appears within the type `RawVec<(String, MidiOutputPort)>`
= note: required because it appears within the type `Vec<(String, MidiOutputPort)>`
note: required because it appears within the type `MidiOutput`
--> /Users/panopticon/.cargo/registry/src/index.crates.io-6f17d22bba15001f/bevy_midi-0.6.0/src/output.rs:42:12
|
42 | pub struct MidiOutput {
| ^^^^^^^^^^
= help: see issue #48214
= note: this error originates in the derive macro `Resource` (in Nightly builds, run with -Z macro-backtrace for more info)
error[E0277]: `*mut u8` cannot be sent between threads safely
--> /Users/panopticon/.cargo/registry/src/index.crates.io-6f17d22bba15001f/bevy_midi-0.6.0/src/output.rs:150:17
|
150 | mut output: ResMut<MidiOutput>,
| ^^^^^^^^^^^^^^^^^^ `*mut u8` cannot be sent between threads safely
|
= help: within `output::Message`, the trait `Send` is not implemented for `*mut u8`
= help: the trait `bevy::prelude::Resource` is implemented for `output::MidiOutput`
= note: required because it appears within the type `PhantomData<*mut u8>`
= note: required because it appears within the type `JsValue`
= note: required because it appears within the type `Object`
= note: required because it appears within the type `EventTarget`
= note: required because it appears within the type `MidiPort`
= note: required because it appears within the type `MidiOutput`
= note: required because it appears within the type `MidiOutputPort`
= note: required because it appears within the type `MidiOutputPort`
note: required because it appears within the type `Message`
--> /Users/panopticon/.cargo/registry/src/index.crates.io-6f17d22bba15001f/bevy_midi-0.6.0/src/output.rs:173:6
|
173 | enum Message {
| ^^^^^^^
= note: required for `crossbeam_channel::Sender<output::Message>` to implement `Send`
note: required because it appears within the type `MidiOutput`
--> /Users/panopticon/.cargo/registry/src/index.crates.io-6f17d22bba15001f/bevy_midi-0.6.0/src/output.rs:42:12
|
42 | pub struct MidiOutput {
| ^^^^^^^^^^
note: required for `output::MidiOutput` to implement `bevy::prelude::Resource`
--> /Users/panopticon/.cargo/registry/src/index.crates.io-6f17d22bba15001f/bevy_midi-0.6.0/src/output.rs:41:10
|
41 | #[derive(Resource)]
| ^^^^^^^^ unsatisfied trait bound introduced in this `derive` macro
42 | pub struct MidiOutput {
| ^^^^^^^^^^
note: required by a bound in `bevy::prelude::ResMut`
--> /Users/panopticon/.cargo/registry/src/index.crates.io-6f17d22bba15001f/bevy_ecs-0.10.1/src/change_detection.rs:428:35
|
428 | pub struct ResMut<'a, T: ?Sized + Resource> {
| ^^^^^^^^ required by this bound in `ResMut`
= note: this error originates in the derive macro `Resource` (in Nightly builds, run with -Z macro-backtrace for more info)
error[E0277]: `*mut u8` cannot be shared between threads safely
--> /Users/panopticon/.cargo/registry/src/index.crates.io-6f17d22bba15001f/bevy_midi-0.6.0/src/output.rs:150:17
|
150 | mut output: ResMut<MidiOutput>,
| ^^^^^^^^^^^^^^^^^^ `*mut u8` cannot be shared between threads safely
|
= help: within `(std::string::String, MidiOutputPort)`, the trait `Sync` is not implemented for `*mut u8`
= help: the trait `bevy::prelude::Resource` is implemented for `output::MidiOutput`
= note: required because it appears within the type `PhantomData<*mut u8>`
= note: required because it appears within the type `JsValue`
= note: required because it appears within the type `Object`
= note: required because it appears within the type `EventTarget`
= note: required because it appears within the type `MidiPort`
= note: required because it appears within the type `MidiOutput`
= note: required because it appears within the type `MidiOutputPort`
= note: required because it appears within the type `MidiOutputPort`
= note: required because it appears within the type `(String, MidiOutputPort)`
= note: required for `Unique<(std::string::String, MidiOutputPort)>` to implement `Sync`
= note: required because it appears within the type `RawVec<(String, MidiOutputPort)>`
= note: required because it appears within the type `Vec<(String, MidiOutputPort)>`
note: required because it appears within the type `MidiOutput`
--> /Users/panopticon/.cargo/registry/src/index.crates.io-6f17d22bba15001f/bevy_midi-0.6.0/src/output.rs:42:12
|
42 | pub struct MidiOutput {
| ^^^^^^^^^^
note: required for `output::MidiOutput` to implement `bevy::prelude::Resource`
--> /Users/panopticon/.cargo/registry/src/index.crates.io-6f17d22bba15001f/bevy_midi-0.6.0/src/output.rs:41:10
|
41 | #[derive(Resource)]
| ^^^^^^^^ unsatisfied trait bound introduced in this `derive` macro
42 | pub struct MidiOutput {
| ^^^^^^^^^^
note: required by a bound in `bevy::prelude::ResMut`
--> /Users/panopticon/.cargo/registry/src/index.crates.io-6f17d22bba15001f/bevy_ecs-0.10.1/src/change_detection.rs:428:35
|
428 | pub struct ResMut<'a, T: ?Sized + Resource> {
| ^^^^^^^^ required by this bound in `ResMut`
= note: this error originates in the derive macro `Resource` (in Nightly builds, run with -Z macro-backtrace for more info)
For more information about this error, try `rustc --explain E0277`.
error: could not compile `bevy_midi` (lib) due to 8 previous errors