witty-crayon-22786
03/17/2017, 5:40 PMerror[E0277]: the trait bound `futures::Future<Error=nodes::Failure, Item=nodes::NodeResult> + 'static: std::marker::Send` is not satisfied
--> src/rust/engine/src/nodes.rs:258:6
|
258 | impl VFS<Failure> for Context {
| ^^^^^^^^^^^^ the trait `std::marker::Send` is not implemented for `futures::Future<Error=nodes::Failure, Item=nodes::NodeResult> + 'static`
|
= note: `futures::Future<Error=nodes::Failure, Item=nodes::NodeResult> + 'static` cannot be sent between threads safely
= note: required because it appears within the type `Box<futures::Future<Error=nodes::Failure, Item=nodes::NodeResult> + 'static>`
= note: required because it appears within the type `futures::future::shared::State<Box<futures::Future<Error=nodes::Failure, Item=nodes::NodeResult> + 'static>>`
= note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Mutex<futures::future::shared::State<Box<futures::Future<Error=nodes::Failure, Item=nodes::NodeResult> + 'static>>>`
= note: required because it appears within the type `futures::future::shared::Inner<Box<futures::Future<Error=nodes::Failure, Item=nodes::NodeResult> + 'static>>`
= note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Arc<futures::future::shared::Inner<Box<futures::Future<Error=nodes::Failure, Item=nodes::NodeResult> + 'static>>>`
= note: required because it appears within the type `futures::future::Shared<Box<futures::Future<Error=nodes::Failure, Item=nodes::NodeResult> + 'static>>`
= note: required because it appears within the type `std::option::Option<futures::future::Shared<Box<futures::Future<Error=nodes::Failure, Item=nodes::NodeResult> + 'static>>>`
= note: required because it appears within the type `graph::Entry`
= note: required because it appears within the type `std::option::Option<graph::Entry>`
= note: required because it appears within the type `petgraph::graph::Node<std::option::Option<graph::Entry>>`
= note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique<petgraph::graph::Node<std::option::Option<graph::Entry>>>`
= note: required because it appears within the type `alloc::raw_vec::RawVec<petgraph::graph::Node<std::option::Option<graph::Entry>>>`
= note: required because it appears within the type `std::vec::Vec<petgraph::graph::Node<std::option::Option<graph::Entry>>>`
= note: required because it appears within the type `petgraph::Graph<std::option::Option<graph::Entry>, std::option::Option<()>>`
= note: required because it appears within the type `petgraph::prelude::StableGraph<graph::Entry, ()>`
= note: required because it appears within the type `graph::InnerGraph`
= note: required because of the requirements on the impl of `std::marker::Send` for `std::sync::Mutex<graph::InnerGraph>`
= note: required because it appears within the type `graph::Graph`
= note: required because it appears within the type `context::Core`
= note: required because of the requirements on the impl of `std::marker::Sync` for `std::sync::Arc<context::Core>`
= note: required because it appears within the type `nodes::Context`
= note: required by `fs::VFS`