Describe the bug
When trying to use the actix_web client inside an impl decorated with graphql_object, a number of errors pop up regarding sending futures between threads. I have posted an issue on juniper https://github.com/graphql-rust/juniper/issues/529 but figured this needed visibility on both ends.
This is on juniper master with the async feature enabled.
out.log
error[E0277]: `std::rc::Rc<awc::ClientConfig>` cannot be sent between threads safely
--> juniper/src/schema.rs:32:1
|
32 | #[juniper::graphql_object]
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ `std::rc::Rc<awc::ClientConfig>` cannot be sent between threads safely
|
= help: within `impl core::future::future::Future`, the trait `std::marker::Send` is not implemented for `std::rc::Rc<awc::ClientConfig>`
= note: required because it appears within the type `awc::Client`
= note: required because it appears within the type `for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5> {std::string::String, awc::Client, &'r awc::Client, awc::Client, &'s str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't0)>>>>>, &'t1 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't2)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't3)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't4)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't5)>>>>>, ()}`
= note: required because it appears within the type `[static generator@juniper/src/schema.rs:32:1: 32:27 args:&juniper::types::base::Arguments<'_> for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5> {std::string::String, awc::Client, &'r awc::Client, awc::Client, &'s str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't0)>>>>>, &'t1 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't2)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't3)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't4)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't5)>>>>>, ()}]`
= note: required because it appears within the type `for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5, 't6, 't7, 't8, 't9, 't10, 't11, 't12, 't13, 't14, 't15, 't16, 't17, 't18, 't19, 't20, 't21, 't22> {[static generator@juniper/src/schema.rs:32:1: 32:27 args:&'r juniper::types::base::Arguments<'s> for<'t23, 't24, 't25, 't26, 't27, 't28, 't29, 't30> {std::string::String, awc::Client, &'t23 awc::Client, awc::Client, &'t24 str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't25)>>>>>, &'t26 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't27)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't28)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't29)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't30)>>>>>, ()}], impl core::future::future::Future, impl core::future::future::Future, (), std::result::Result<schema::Human, juniper::executor::FieldError>, std::result::Result<std::option::Option<(&'t4 (), schema::Human)>, juniper::executor::FieldError>, &'t5 (), schema::Human, juniper::executor::Executor<'t6, ()>, &'t7 juniper::executor::Executor<'t8, ()>, (), &'t9 (), &'t10 (), &'t11 schema::Human, &'t12 schema::Human, impl core::future::future::Future, impl core::future::future::Future, ()}`
= note: required because it appears within the type `[static generator@juniper/src/schema.rs:32:1: 32:27 args:&juniper::types::base::Arguments<'_>, executor:&juniper::executor::Executor<'_, ()> for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5, 't6, 't7, 't8, 't9, 't10, 't11, 't12, 't13, 't14, 't15, 't16, 't17, 't18, 't19, 't20, 't21, 't22> {[static generator@juniper/src/schema.rs:32:1: 32:27 args:&'r juniper::types::base::Arguments<'s> for<'t23, 't24, 't25, 't26, 't27, 't28, 't29, 't30> {std::string::String, awc::Client, &'t23 awc::Client, awc::Client, &'t24 str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't25)>>>>>, &'t26 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't27)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't28)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't29)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't30)>>>>>, ()}], impl core::future::future::Future, impl core::future::future::Future, (), std::result::Result<schema::Human, juniper::executor::FieldError>, std::result::Result<std::option::Option<(&'t4 (), schema::Human)>, juniper::executor::FieldError>, &'t5 (), schema::Human, juniper::executor::Executor<'t6, ()>, &'t7 juniper::executor::Executor<'t8, ()>, (), &'t9 (), &'t10 (), &'t11 schema::Human, &'t12 schema::Human, impl core::future::future::Future, impl core::future::future::Future, ()}]`
= note: required because it appears within the type `std::future::GenFuture<[static generator@juniper/src/schema.rs:32:1: 32:27 args:&juniper::types::base::Arguments<'_>, executor:&juniper::executor::Executor<'_, ()> for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5, 't6, 't7, 't8, 't9, 't10, 't11, 't12, 't13, 't14, 't15, 't16, 't17, 't18, 't19, 't20, 't21, 't22> {[static generator@juniper/src/schema.rs:32:1: 32:27 args:&'r juniper::types::base::Arguments<'s> for<'t23, 't24, 't25, 't26, 't27, 't28, 't29, 't30> {std::string::String, awc::Client, &'t23 awc::Client, awc::Client, &'t24 str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't25)>>>>>, &'t26 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't27)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't28)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't29)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't30)>>>>>, ()}], impl core::future::future::Future, impl core::future::future::Future, (), std::result::Result<schema::Human, juniper::executor::FieldError>, std::result::Result<std::option::Option<(&'t4 (), schema::Human)>, juniper::executor::FieldError>, &'t5 (), schema::Human, juniper::executor::Executor<'t6, ()>, &'t7 juniper::executor::Executor<'t8, ()>, (), &'t9 (), &'t10 (), &'t11 schema::Human, &'t12 schema::Human, impl core::future::future::Future, impl core::future::future::Future, ()}]>`
= note: required because it appears within the type `impl core::future::future::Future`
= note: required by `futures_util::future::future::FutureExt::boxed`
error[E0277]: `std::rc::Rc<awc::ClientConfig>` cannot be shared between threads safely
--> juniper/src/schema.rs:32:1
|
32 | #[juniper::graphql_object]
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ `std::rc::Rc<awc::ClientConfig>` cannot be shared between threads safely
|
= help: within `awc::Client`, the trait `std::marker::Sync` is not implemented for `std::rc::Rc<awc::ClientConfig>`
= note: required because it appears within the type `awc::Client`
= note: required because of the requirements on the impl of `std::marker::Send` for `&awc::Client`
= note: required because it appears within the type `for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5> {std::string::String, awc::Client, &'r awc::Client, awc::Client, &'s str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't0)>>>>>, &'t1 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't2)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't3)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't4)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't5)>>>>>, ()}`
= note: required because it appears within the type `[static generator@juniper/src/schema.rs:32:1: 32:27 args:&juniper::types::base::Arguments<'_> for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5> {std::string::String, awc::Client, &'r awc::Client, awc::Client, &'s str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't0)>>>>>, &'t1 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't2)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't3)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't4)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't5)>>>>>, ()}]`
= note: required because it appears within the type `for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5, 't6, 't7, 't8, 't9, 't10, 't11, 't12, 't13, 't14, 't15, 't16, 't17, 't18, 't19, 't20, 't21, 't22> {[static generator@juniper/src/schema.rs:32:1: 32:27 args:&'r juniper::types::base::Arguments<'s> for<'t23, 't24, 't25, 't26, 't27, 't28, 't29, 't30> {std::string::String, awc::Client, &'t23 awc::Client, awc::Client, &'t24 str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't25)>>>>>, &'t26 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't27)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't28)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't29)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't30)>>>>>, ()}], impl core::future::future::Future, impl core::future::future::Future, (), std::result::Result<schema::Human, juniper::executor::FieldError>, std::result::Result<std::option::Option<(&'t4 (), schema::Human)>, juniper::executor::FieldError>, &'t5 (), schema::Human, juniper::executor::Executor<'t6, ()>, &'t7 juniper::executor::Executor<'t8, ()>, (), &'t9 (), &'t10 (), &'t11 schema::Human, &'t12 schema::Human, impl core::future::future::Future, impl core::future::future::Future, ()}`
= note: required because it appears within the type `[static generator@juniper/src/schema.rs:32:1: 32:27 args:&juniper::types::base::Arguments<'_>, executor:&juniper::executor::Executor<'_, ()> for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5, 't6, 't7, 't8, 't9, 't10, 't11, 't12, 't13, 't14, 't15, 't16, 't17, 't18, 't19, 't20, 't21, 't22> {[static generator@juniper/src/schema.rs:32:1: 32:27 args:&'r juniper::types::base::Arguments<'s> for<'t23, 't24, 't25, 't26, 't27, 't28, 't29, 't30> {std::string::String, awc::Client, &'t23 awc::Client, awc::Client, &'t24 str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't25)>>>>>, &'t26 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't27)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't28)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't29)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't30)>>>>>, ()}], impl core::future::future::Future, impl core::future::future::Future, (), std::result::Result<schema::Human, juniper::executor::FieldError>, std::result::Result<std::option::Option<(&'t4 (), schema::Human)>, juniper::executor::FieldError>, &'t5 (), schema::Human, juniper::executor::Executor<'t6, ()>, &'t7 juniper::executor::Executor<'t8, ()>, (), &'t9 (), &'t10 (), &'t11 schema::Human, &'t12 schema::Human, impl core::future::future::Future, impl core::future::future::Future, ()}]`
= note: required because it appears within the type `std::future::GenFuture<[static generator@juniper/src/schema.rs:32:1: 32:27 args:&juniper::types::base::Arguments<'_>, executor:&juniper::executor::Executor<'_, ()> for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5, 't6, 't7, 't8, 't9, 't10, 't11, 't12, 't13, 't14, 't15, 't16, 't17, 't18, 't19, 't20, 't21, 't22> {[static generator@juniper/src/schema.rs:32:1: 32:27 args:&'r juniper::types::base::Arguments<'s> for<'t23, 't24, 't25, 't26, 't27, 't28, 't29, 't30> {std::string::String, awc::Client, &'t23 awc::Client, awc::Client, &'t24 str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't25)>>>>>, &'t26 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't27)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't28)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't29)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't30)>>>>>, ()}], impl core::future::future::Future, impl core::future::future::Future, (), std::result::Result<schema::Human, juniper::executor::FieldError>, std::result::Result<std::option::Option<(&'t4 (), schema::Human)>, juniper::executor::FieldError>, &'t5 (), schema::Human, juniper::executor::Executor<'t6, ()>, &'t7 juniper::executor::Executor<'t8, ()>, (), &'t9 (), &'t10 (), &'t11 schema::Human, &'t12 schema::Human, impl core::future::future::Future, impl core::future::future::Future, ()}]>`
= note: required because it appears within the type `impl core::future::future::Future`
= note: required by `futures_util::future::future::FutureExt::boxed`
error[E0277]: `std::rc::Rc<std::cell::RefCell<actix_http::h1::payload::Inner>>` cannot be sent between threads safely
--> juniper/src/schema.rs:32:1
|
32 | #[juniper::graphql_object]
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ `std::rc::Rc<std::cell::RefCell<actix_http::h1::payload::Inner>>` cannot be sent between threads safely
|
= help: within `impl core::future::future::Future`, the trait `std::marker::Send` is not implemented for `std::rc::Rc<std::cell::RefCell<actix_http::h1::payload::Inner>>`
= note: required because it appears within the type `actix_http::h1::payload::Payload`
= note: required because it appears within the type `actix_http::payload::Payload<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>>>>>>>`
= note: required because it appears within the type `awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>>>>>>>`
= note: required because it appears within the type `for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5> {std::string::String, awc::Client, &'r awc::Client, awc::Client, &'s str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't0)>>>>>, &'t1 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't2)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't3)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't4)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't5)>>>>>, ()}`
= note: required because it appears within the type `[static generator@juniper/src/schema.rs:32:1: 32:27 args:&juniper::types::base::Arguments<'_> for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5> {std::string::String, awc::Client, &'r awc::Client, awc::Client, &'s str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't0)>>>>>, &'t1 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't2)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't3)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't4)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't5)>>>>>, ()}]`
= note: required because it appears within the type `for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5, 't6, 't7, 't8, 't9, 't10, 't11, 't12, 't13, 't14, 't15, 't16, 't17, 't18, 't19, 't20, 't21, 't22> {[static generator@juniper/src/schema.rs:32:1: 32:27 args:&'r juniper::types::base::Arguments<'s> for<'t23, 't24, 't25, 't26, 't27, 't28, 't29, 't30> {std::string::String, awc::Client, &'t23 awc::Client, awc::Client, &'t24 str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't25)>>>>>, &'t26 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't27)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't28)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't29)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't30)>>>>>, ()}], impl core::future::future::Future, impl core::future::future::Future, (), std::result::Result<schema::Human, juniper::executor::FieldError>, std::result::Result<std::option::Option<(&'t4 (), schema::Human)>, juniper::executor::FieldError>, &'t5 (), schema::Human, juniper::executor::Executor<'t6, ()>, &'t7 juniper::executor::Executor<'t8, ()>, (), &'t9 (), &'t10 (), &'t11 schema::Human, &'t12 schema::Human, impl core::future::future::Future, impl core::future::future::Future, ()}`
= note: required because it appears within the type `[static generator@juniper/src/schema.rs:32:1: 32:27 args:&juniper::types::base::Arguments<'_>, executor:&juniper::executor::Executor<'_, ()> for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5, 't6, 't7, 't8, 't9, 't10, 't11, 't12, 't13, 't14, 't15, 't16, 't17, 't18, 't19, 't20, 't21, 't22> {[static generator@juniper/src/schema.rs:32:1: 32:27 args:&'r juniper::types::base::Arguments<'s> for<'t23, 't24, 't25, 't26, 't27, 't28, 't29, 't30> {std::string::String, awc::Client, &'t23 awc::Client, awc::Client, &'t24 str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't25)>>>>>, &'t26 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't27)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't28)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't29)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't30)>>>>>, ()}], impl core::future::future::Future, impl core::future::future::Future, (), std::result::Result<schema::Human, juniper::executor::FieldError>, std::result::Result<std::option::Option<(&'t4 (), schema::Human)>, juniper::executor::FieldError>, &'t5 (), schema::Human, juniper::executor::Executor<'t6, ()>, &'t7 juniper::executor::Executor<'t8, ()>, (), &'t9 (), &'t10 (), &'t11 schema::Human, &'t12 schema::Human, impl core::future::future::Future, impl core::future::future::Future, ()}]`
= note: required because it appears within the type `std::future::GenFuture<[static generator@juniper/src/schema.rs:32:1: 32:27 args:&juniper::types::base::Arguments<'_>, executor:&juniper::executor::Executor<'_, ()> for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5, 't6, 't7, 't8, 't9, 't10, 't11, 't12, 't13, 't14, 't15, 't16, 't17, 't18, 't19, 't20, 't21, 't22> {[static generator@juniper/src/schema.rs:32:1: 32:27 args:&'r juniper::types::base::Arguments<'s> for<'t23, 't24, 't25, 't26, 't27, 't28, 't29, 't30> {std::string::String, awc::Client, &'t23 awc::Client, awc::Client, &'t24 str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't25)>>>>>, &'t26 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't27)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't28)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't29)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't30)>>>>>, ()}], impl core::future::future::Future, impl core::future::future::Future, (), std::result::Result<schema::Human, juniper::executor::FieldError>, std::result::Result<std::option::Option<(&'t4 (), schema::Human)>, juniper::executor::FieldError>, &'t5 (), schema::Human, juniper::executor::Executor<'t6, ()>, &'t7 juniper::executor::Executor<'t8, ()>, (), &'t9 (), &'t10 (), &'t11 schema::Human, &'t12 schema::Human, impl core::future::future::Future, impl core::future::future::Future, ()}]>`
= note: required because it appears within the type `impl core::future::future::Future`
= note: required by `futures_util::future::future::FutureExt::boxed`
error[E0277]: `std::rc::Rc<awc::ClientConfig>` cannot be sent between threads safely
--> juniper/src/schema.rs:32:1
|
32 | #[juniper::graphql_object]
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ `std::rc::Rc<awc::ClientConfig>` cannot be sent between threads safely
|
= help: within `impl core::future::future::Future`, the trait `std::marker::Send` is not implemented for `std::rc::Rc<awc::ClientConfig>`
= note: required because it appears within the type `awc::Client`
= note: required because it appears within the type `for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5> {std::string::String, awc::Client, &'r awc::Client, awc::Client, &'s str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't0)>>>>>, &'t1 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't2)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't3)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't4)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't5)>>>>>, ()}`
= note: required because it appears within the type `[static generator@juniper/src/schema.rs:32:1: 32:27 args:&juniper::types::base::Arguments<'_> for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5> {std::string::String, awc::Client, &'r awc::Client, awc::Client, &'s str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't0)>>>>>, &'t1 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't2)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't3)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't4)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't5)>>>>>, ()}]`
= note: required because it appears within the type `for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5, 't6, 't7, 't8, 't9, 't10, 't11, 't12, 't13, 't14, 't15, 't16, 't17, 't18, 't19, 't20, 't21, 't22> {[static generator@juniper/src/schema.rs:32:1: 32:27 args:&'r juniper::types::base::Arguments<'s> for<'t23, 't24, 't25, 't26, 't27, 't28, 't29, 't30> {std::string::String, awc::Client, &'t23 awc::Client, awc::Client, &'t24 str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't25)>>>>>, &'t26 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't27)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't28)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't29)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't30)>>>>>, ()}], impl core::future::future::Future, impl core::future::future::Future, (), std::result::Result<schema::Human, juniper::executor::FieldError>, std::result::Result<std::option::Option<(&'t4 (), schema::Human)>, juniper::executor::FieldError>, &'t5 (), schema::Human, juniper::executor::Executor<'t6, ()>, &'t7 juniper::executor::Executor<'t8, ()>, (), &'t9 (), &'t10 (), &'t11 schema::Human, &'t12 schema::Human, impl core::future::future::Future, impl core::future::future::Future, ()}`
= note: required because it appears within the type `[static generator@juniper/src/schema.rs:32:1: 32:27 args:&juniper::types::base::Arguments<'_>, executor:&juniper::executor::Executor<'_, ()> for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5, 't6, 't7, 't8, 't9, 't10, 't11, 't12, 't13, 't14, 't15, 't16, 't17, 't18, 't19, 't20, 't21, 't22> {[static generator@juniper/src/schema.rs:32:1: 32:27 args:&'r juniper::types::base::Arguments<'s> for<'t23, 't24, 't25, 't26, 't27, 't28, 't29, 't30> {std::string::String, awc::Client, &'t23 awc::Client, awc::Client, &'t24 str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't25)>>>>>, &'t26 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't27)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't28)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't29)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't30)>>>>>, ()}], impl core::future::future::Future, impl core::future::future::Future, (), std::result::Result<schema::Human, juniper::executor::FieldError>, std::result::Result<std::option::Option<(&'t4 (), schema::Human)>, juniper::executor::FieldError>, &'t5 (), schema::Human, juniper::executor::Executor<'t6, ()>, &'t7 juniper::executor::Executor<'t8, ()>, (), &'t9 (), &'t10 (), &'t11 schema::Human, &'t12 schema::Human, impl core::future::future::Future, impl core::future::future::Future, ()}]`
= note: required because it appears within the type `std::future::GenFuture<[static generator@juniper/src/schema.rs:32:1: 32:27 args:&juniper::types::base::Arguments<'_>, executor:&juniper::executor::Executor<'_, ()> for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5, 't6, 't7, 't8, 't9, 't10, 't11, 't12, 't13, 't14, 't15, 't16, 't17, 't18, 't19, 't20, 't21, 't22> {[static generator@juniper/src/schema.rs:32:1: 32:27 args:&'r juniper::types::base::Arguments<'s> for<'t23, 't24, 't25, 't26, 't27, 't28, 't29, 't30> {std::string::String, awc::Client, &'t23 awc::Client, awc::Client, &'t24 str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't25)>>>>>, &'t26 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't27)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't28)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't29)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't30)>>>>>, ()}], impl core::future::future::Future, impl core::future::future::Future, (), std::result::Result<schema::Human, juniper::executor::FieldError>, std::result::Result<std::option::Option<(&'t4 (), schema::Human)>, juniper::executor::FieldError>, &'t5 (), schema::Human, juniper::executor::Executor<'t6, ()>, &'t7 juniper::executor::Executor<'t8, ()>, (), &'t9 (), &'t10 (), &'t11 schema::Human, &'t12 schema::Human, impl core::future::future::Future, impl core::future::future::Future, ()}]>`
= note: required because it appears within the type `impl core::future::future::Future`
= note: required by `futures_util::future::future::FutureExt::boxed`
error[E0277]: `(dyn core::future::future::Future<Output = std::result::Result<awc::response::ClientResponse, actix_http::client::error::SendRequestError>> + 'static)` cannot be sent between threads safely
--> juniper/src/schema.rs:32:1
|
32 | #[juniper::graphql_object]
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ `(dyn core::future::future::Future<Output = std::result::Result<awc::response::ClientResponse, actix_http::client::error::SendRequestError>> + 'static)` cannot be sent between threads safely
|
= help: the trait `std::marker::Send` is not implemented for `(dyn core::future::future::Future<Output = std::result::Result<awc::response::ClientResponse, actix_http::client::error::SendRequestError>> + 'static)`
= note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique<(dyn core::future::future::Future<Output = std::result::Result<awc::response::ClientResponse, actix_http::client::error::SendRequestError>> + 'static)>`
= note: required because it appears within the type `std::boxed::Box<(dyn core::future::future::Future<Output = std::result::Result<awc::response::ClientResponse, actix_http::client::error::SendRequestError>> + 'static)>`
= note: required because it appears within the type `std::pin::Pin<std::boxed::Box<(dyn core::future::future::Future<Output = std::result::Result<awc::response::ClientResponse, actix_http::client::error::SendRequestError>> + 'static)>>`
= note: required because it appears within the type `awc::sender::SendClientRequest`
= note: required because it appears within the type `for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5> {std::string::String, awc::Client, &'r awc::Client, awc::Client, &'s str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't0)>>>>>, &'t1 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't2)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't3)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't4)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't5)>>>>>, ()}`
= note: required because it appears within the type `[static generator@juniper/src/schema.rs:32:1: 32:27 args:&juniper::types::base::Arguments<'_> for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5> {std::string::String, awc::Client, &'r awc::Client, awc::Client, &'s str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't0)>>>>>, &'t1 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't2)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't3)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't4)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't5)>>>>>, ()}]`
= note: required because it appears within the type `for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5, 't6, 't7, 't8, 't9, 't10, 't11, 't12, 't13, 't14, 't15, 't16, 't17, 't18, 't19, 't20, 't21, 't22> {[static generator@juniper/src/schema.rs:32:1: 32:27 args:&'r juniper::types::base::Arguments<'s> for<'t23, 't24, 't25, 't26, 't27, 't28, 't29, 't30> {std::string::String, awc::Client, &'t23 awc::Client, awc::Client, &'t24 str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't25)>>>>>, &'t26 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't27)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't28)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't29)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't30)>>>>>, ()}], impl core::future::future::Future, impl core::future::future::Future, (), std::result::Result<schema::Human, juniper::executor::FieldError>, std::result::Result<std::option::Option<(&'t4 (), schema::Human)>, juniper::executor::FieldError>, &'t5 (), schema::Human, juniper::executor::Executor<'t6, ()>, &'t7 juniper::executor::Executor<'t8, ()>, (), &'t9 (), &'t10 (), &'t11 schema::Human, &'t12 schema::Human, impl core::future::future::Future, impl core::future::future::Future, ()}`
= note: required because it appears within the type `[static generator@juniper/src/schema.rs:32:1: 32:27 args:&juniper::types::base::Arguments<'_>, executor:&juniper::executor::Executor<'_, ()> for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5, 't6, 't7, 't8, 't9, 't10, 't11, 't12, 't13, 't14, 't15, 't16, 't17, 't18, 't19, 't20, 't21, 't22> {[static generator@juniper/src/schema.rs:32:1: 32:27 args:&'r juniper::types::base::Arguments<'s> for<'t23, 't24, 't25, 't26, 't27, 't28, 't29, 't30> {std::string::String, awc::Client, &'t23 awc::Client, awc::Client, &'t24 str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't25)>>>>>, &'t26 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't27)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't28)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't29)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't30)>>>>>, ()}], impl core::future::future::Future, impl core::future::future::Future, (), std::result::Result<schema::Human, juniper::executor::FieldError>, std::result::Result<std::option::Option<(&'t4 (), schema::Human)>, juniper::executor::FieldError>, &'t5 (), schema::Human, juniper::executor::Executor<'t6, ()>, &'t7 juniper::executor::Executor<'t8, ()>, (), &'t9 (), &'t10 (), &'t11 schema::Human, &'t12 schema::Human, impl core::future::future::Future, impl core::future::future::Future, ()}]`
= note: required because it appears within the type `std::future::GenFuture<[static generator@juniper/src/schema.rs:32:1: 32:27 args:&juniper::types::base::Arguments<'_>, executor:&juniper::executor::Executor<'_, ()> for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5, 't6, 't7, 't8, 't9, 't10, 't11, 't12, 't13, 't14, 't15, 't16, 't17, 't18, 't19, 't20, 't21, 't22> {[static generator@juniper/src/schema.rs:32:1: 32:27 args:&'r juniper::types::base::Arguments<'s> for<'t23, 't24, 't25, 't26, 't27, 't28, 't29, 't30> {std::string::String, awc::Client, &'t23 awc::Client, awc::Client, &'t24 str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't25)>>>>>, &'t26 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't27)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't28)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't29)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't30)>>>>>, ()}], impl core::future::future::Future, impl core::future::future::Future, (), std::result::Result<schema::Human, juniper::executor::FieldError>, std::result::Result<std::option::Option<(&'t4 (), schema::Human)>, juniper::executor::FieldError>, &'t5 (), schema::Human, juniper::executor::Executor<'t6, ()>, &'t7 juniper::executor::Executor<'t8, ()>, (), &'t9 (), &'t10 (), &'t11 schema::Human, &'t12 schema::Human, impl core::future::future::Future, impl core::future::future::Future, ()}]>`
= note: required because it appears within the type `impl core::future::future::Future`
= note: required by `futures_util::future::future::FutureExt::boxed`
error[E0277]: `std::rc::Rc<awc::ClientConfig>` cannot be shared between threads safely
--> juniper/src/schema.rs:32:1
|
32 | #[juniper::graphql_object]
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ `std::rc::Rc<awc::ClientConfig>` cannot be shared between threads safely
|
= help: within `awc::Client`, the trait `std::marker::Sync` is not implemented for `std::rc::Rc<awc::ClientConfig>`
= note: required because it appears within the type `awc::Client`
= note: required because of the requirements on the impl of `std::marker::Send` for `&awc::Client`
= note: required because it appears within the type `for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5> {std::string::String, awc::Client, &'r awc::Client, awc::Client, &'s str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't0)>>>>>, &'t1 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't2)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't3)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't4)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't5)>>>>>, ()}`
= note: required because it appears within the type `[static generator@juniper/src/schema.rs:32:1: 32:27 args:&juniper::types::base::Arguments<'_> for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5> {std::string::String, awc::Client, &'r awc::Client, awc::Client, &'s str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't0)>>>>>, &'t1 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't2)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't3)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't4)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't5)>>>>>, ()}]`
= note: required because it appears within the type `for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5, 't6, 't7, 't8, 't9, 't10, 't11, 't12, 't13, 't14, 't15, 't16, 't17, 't18, 't19, 't20, 't21, 't22> {[static generator@juniper/src/schema.rs:32:1: 32:27 args:&'r juniper::types::base::Arguments<'s> for<'t23, 't24, 't25, 't26, 't27, 't28, 't29, 't30> {std::string::String, awc::Client, &'t23 awc::Client, awc::Client, &'t24 str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't25)>>>>>, &'t26 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't27)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't28)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't29)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't30)>>>>>, ()}], impl core::future::future::Future, impl core::future::future::Future, (), std::result::Result<schema::Human, juniper::executor::FieldError>, std::result::Result<std::option::Option<(&'t4 (), schema::Human)>, juniper::executor::FieldError>, &'t5 (), schema::Human, juniper::executor::Executor<'t6, ()>, &'t7 juniper::executor::Executor<'t8, ()>, (), &'t9 (), &'t10 (), &'t11 schema::Human, &'t12 schema::Human, impl core::future::future::Future, impl core::future::future::Future, ()}`
= note: required because it appears within the type `[static generator@juniper/src/schema.rs:32:1: 32:27 args:&juniper::types::base::Arguments<'_>, executor:&juniper::executor::Executor<'_, ()> for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5, 't6, 't7, 't8, 't9, 't10, 't11, 't12, 't13, 't14, 't15, 't16, 't17, 't18, 't19, 't20, 't21, 't22> {[static generator@juniper/src/schema.rs:32:1: 32:27 args:&'r juniper::types::base::Arguments<'s> for<'t23, 't24, 't25, 't26, 't27, 't28, 't29, 't30> {std::string::String, awc::Client, &'t23 awc::Client, awc::Client, &'t24 str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't25)>>>>>, &'t26 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't27)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't28)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't29)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't30)>>>>>, ()}], impl core::future::future::Future, impl core::future::future::Future, (), std::result::Result<schema::Human, juniper::executor::FieldError>, std::result::Result<std::option::Option<(&'t4 (), schema::Human)>, juniper::executor::FieldError>, &'t5 (), schema::Human, juniper::executor::Executor<'t6, ()>, &'t7 juniper::executor::Executor<'t8, ()>, (), &'t9 (), &'t10 (), &'t11 schema::Human, &'t12 schema::Human, impl core::future::future::Future, impl core::future::future::Future, ()}]`
= note: required because it appears within the type `std::future::GenFuture<[static generator@juniper/src/schema.rs:32:1: 32:27 args:&juniper::types::base::Arguments<'_>, executor:&juniper::executor::Executor<'_, ()> for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5, 't6, 't7, 't8, 't9, 't10, 't11, 't12, 't13, 't14, 't15, 't16, 't17, 't18, 't19, 't20, 't21, 't22> {[static generator@juniper/src/schema.rs:32:1: 32:27 args:&'r juniper::types::base::Arguments<'s> for<'t23, 't24, 't25, 't26, 't27, 't28, 't29, 't30> {std::string::String, awc::Client, &'t23 awc::Client, awc::Client, &'t24 str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't25)>>>>>, &'t26 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't27)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't28)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't29)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't30)>>>>>, ()}], impl core::future::future::Future, impl core::future::future::Future, (), std::result::Result<schema::Human, juniper::executor::FieldError>, std::result::Result<std::option::Option<(&'t4 (), schema::Human)>, juniper::executor::FieldError>, &'t5 (), schema::Human, juniper::executor::Executor<'t6, ()>, &'t7 juniper::executor::Executor<'t8, ()>, (), &'t9 (), &'t10 (), &'t11 schema::Human, &'t12 schema::Human, impl core::future::future::Future, impl core::future::future::Future, ()}]>`
= note: required because it appears within the type `impl core::future::future::Future`
= note: required by `futures_util::future::future::FutureExt::boxed`
error[E0277]: `std::rc::Rc<std::cell::RefCell<actix_http::h1::payload::Inner>>` cannot be sent between threads safely
--> juniper/src/schema.rs:32:1
|
32 | #[juniper::graphql_object]
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ `std::rc::Rc<std::cell::RefCell<actix_http::h1::payload::Inner>>` cannot be sent between threads safely
|
= help: within `impl core::future::future::Future`, the trait `std::marker::Send` is not implemented for `std::rc::Rc<std::cell::RefCell<actix_http::h1::payload::Inner>>`
= note: required because it appears within the type `actix_http::h1::payload::Payload`
= note: required because it appears within the type `actix_http::payload::Payload<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>>>>>>>`
= note: required because it appears within the type `awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>>>>>>>`
= note: required because it appears within the type `for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5> {std::string::String, awc::Client, &'r awc::Client, awc::Client, &'s str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't0)>>>>>, &'t1 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't2)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't3)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't4)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't5)>>>>>, ()}`
= note: required because it appears within the type `[static generator@juniper/src/schema.rs:32:1: 32:27 args:&juniper::types::base::Arguments<'_> for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5> {std::string::String, awc::Client, &'r awc::Client, awc::Client, &'s str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't0)>>>>>, &'t1 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't2)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't3)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't4)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't5)>>>>>, ()}]`
= note: required because it appears within the type `for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5, 't6, 't7, 't8, 't9, 't10, 't11, 't12, 't13, 't14, 't15, 't16, 't17, 't18, 't19, 't20, 't21, 't22> {[static generator@juniper/src/schema.rs:32:1: 32:27 args:&'r juniper::types::base::Arguments<'s> for<'t23, 't24, 't25, 't26, 't27, 't28, 't29, 't30> {std::string::String, awc::Client, &'t23 awc::Client, awc::Client, &'t24 str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't25)>>>>>, &'t26 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't27)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't28)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't29)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't30)>>>>>, ()}], impl core::future::future::Future, impl core::future::future::Future, (), std::result::Result<schema::Human, juniper::executor::FieldError>, std::result::Result<std::option::Option<(&'t4 (), schema::Human)>, juniper::executor::FieldError>, &'t5 (), schema::Human, juniper::executor::Executor<'t6, ()>, &'t7 juniper::executor::Executor<'t8, ()>, (), &'t9 (), &'t10 (), &'t11 schema::Human, &'t12 schema::Human, impl core::future::future::Future, impl core::future::future::Future, ()}`
= note: required because it appears within the type `[static generator@juniper/src/schema.rs:32:1: 32:27 args:&juniper::types::base::Arguments<'_>, executor:&juniper::executor::Executor<'_, ()> for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5, 't6, 't7, 't8, 't9, 't10, 't11, 't12, 't13, 't14, 't15, 't16, 't17, 't18, 't19, 't20, 't21, 't22> {[static generator@juniper/src/schema.rs:32:1: 32:27 args:&'r juniper::types::base::Arguments<'s> for<'t23, 't24, 't25, 't26, 't27, 't28, 't29, 't30> {std::string::String, awc::Client, &'t23 awc::Client, awc::Client, &'t24 str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't25)>>>>>, &'t26 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't27)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't28)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't29)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't30)>>>>>, ()}], impl core::future::future::Future, impl core::future::future::Future, (), std::result::Result<schema::Human, juniper::executor::FieldError>, std::result::Result<std::option::Option<(&'t4 (), schema::Human)>, juniper::executor::FieldError>, &'t5 (), schema::Human, juniper::executor::Executor<'t6, ()>, &'t7 juniper::executor::Executor<'t8, ()>, (), &'t9 (), &'t10 (), &'t11 schema::Human, &'t12 schema::Human, impl core::future::future::Future, impl core::future::future::Future, ()}]`
= note: required because it appears within the type `std::future::GenFuture<[static generator@juniper/src/schema.rs:32:1: 32:27 args:&juniper::types::base::Arguments<'_>, executor:&juniper::executor::Executor<'_, ()> for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5, 't6, 't7, 't8, 't9, 't10, 't11, 't12, 't13, 't14, 't15, 't16, 't17, 't18, 't19, 't20, 't21, 't22> {[static generator@juniper/src/schema.rs:32:1: 32:27 args:&'r juniper::types::base::Arguments<'s> for<'t23, 't24, 't25, 't26, 't27, 't28, 't29, 't30> {std::string::String, awc::Client, &'t23 awc::Client, awc::Client, &'t24 str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't25)>>>>>, &'t26 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't27)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't28)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't29)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't30)>>>>>, ()}], impl core::future::future::Future, impl core::future::future::Future, (), std::result::Result<schema::Human, juniper::executor::FieldError>, std::result::Result<std::option::Option<(&'t4 (), schema::Human)>, juniper::executor::FieldError>, &'t5 (), schema::Human, juniper::executor::Executor<'t6, ()>, &'t7 juniper::executor::Executor<'t8, ()>, (), &'t9 (), &'t10 (), &'t11 schema::Human, &'t12 schema::Human, impl core::future::future::Future, impl core::future::future::Future, ()}]>`
= note: required because it appears within the type `impl core::future::future::Future`
= note: required by `futures_util::future::future::FutureExt::boxed`
error[E0277]: `(dyn actix_http::error::ResponseError + 'static)` cannot be sent between threads safely
--> juniper/src/schema.rs:32:1
|
32 | #[juniper::graphql_object]
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ `(dyn actix_http::error::ResponseError + 'static)` cannot be sent between threads safely
|
= help: the trait `std::marker::Send` is not implemented for `(dyn actix_http::error::ResponseError + 'static)`
= note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique<(dyn actix_http::error::ResponseError + 'static)>`
= note: required because it appears within the type `std::boxed::Box<(dyn actix_http::error::ResponseError + 'static)>`
= note: required because it appears within the type `actix_http::error::Error`
= note: required because it appears within the type `actix_http::client::error::SendRequestError`
= note: required because it appears within the type `std::option::Option<actix_http::client::error::SendRequestError>`
= note: required because it appears within the type `awc::sender::SendClientRequest`
= note: required because it appears within the type `for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5> {std::string::String, awc::Client, &'r awc::Client, awc::Client, &'s str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't0)>>>>>, &'t1 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't2)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't3)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't4)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't5)>>>>>, ()}`
= note: required because it appears within the type `[static generator@juniper/src/schema.rs:32:1: 32:27 args:&juniper::types::base::Arguments<'_> for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5> {std::string::String, awc::Client, &'r awc::Client, awc::Client, &'s str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't0)>>>>>, &'t1 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't2)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't3)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't4)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't5)>>>>>, ()}]`
= note: required because it appears within the type `for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5, 't6, 't7, 't8, 't9, 't10, 't11, 't12, 't13, 't14, 't15, 't16, 't17, 't18, 't19, 't20, 't21, 't22> {[static generator@juniper/src/schema.rs:32:1: 32:27 args:&'r juniper::types::base::Arguments<'s> for<'t23, 't24, 't25, 't26, 't27, 't28, 't29, 't30> {std::string::String, awc::Client, &'t23 awc::Client, awc::Client, &'t24 str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't25)>>>>>, &'t26 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't27)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't28)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't29)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't30)>>>>>, ()}], impl core::future::future::Future, impl core::future::future::Future, (), std::result::Result<schema::Human, juniper::executor::FieldError>, std::result::Result<std::option::Option<(&'t4 (), schema::Human)>, juniper::executor::FieldError>, &'t5 (), schema::Human, juniper::executor::Executor<'t6, ()>, &'t7 juniper::executor::Executor<'t8, ()>, (), &'t9 (), &'t10 (), &'t11 schema::Human, &'t12 schema::Human, impl core::future::future::Future, impl core::future::future::Future, ()}`
= note: required because it appears within the type `[static generator@juniper/src/schema.rs:32:1: 32:27 args:&juniper::types::base::Arguments<'_>, executor:&juniper::executor::Executor<'_, ()> for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5, 't6, 't7, 't8, 't9, 't10, 't11, 't12, 't13, 't14, 't15, 't16, 't17, 't18, 't19, 't20, 't21, 't22> {[static generator@juniper/src/schema.rs:32:1: 32:27 args:&'r juniper::types::base::Arguments<'s> for<'t23, 't24, 't25, 't26, 't27, 't28, 't29, 't30> {std::string::String, awc::Client, &'t23 awc::Client, awc::Client, &'t24 str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't25)>>>>>, &'t26 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't27)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't28)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't29)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't30)>>>>>, ()}], impl core::future::future::Future, impl core::future::future::Future, (), std::result::Result<schema::Human, juniper::executor::FieldError>, std::result::Result<std::option::Option<(&'t4 (), schema::Human)>, juniper::executor::FieldError>, &'t5 (), schema::Human, juniper::executor::Executor<'t6, ()>, &'t7 juniper::executor::Executor<'t8, ()>, (), &'t9 (), &'t10 (), &'t11 schema::Human, &'t12 schema::Human, impl core::future::future::Future, impl core::future::future::Future, ()}]`
= note: required because it appears within the type `std::future::GenFuture<[static generator@juniper/src/schema.rs:32:1: 32:27 args:&juniper::types::base::Arguments<'_>, executor:&juniper::executor::Executor<'_, ()> for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5, 't6, 't7, 't8, 't9, 't10, 't11, 't12, 't13, 't14, 't15, 't16, 't17, 't18, 't19, 't20, 't21, 't22> {[static generator@juniper/src/schema.rs:32:1: 32:27 args:&'r juniper::types::base::Arguments<'s> for<'t23, 't24, 't25, 't26, 't27, 't28, 't29, 't30> {std::string::String, awc::Client, &'t23 awc::Client, awc::Client, &'t24 str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't25)>>>>>, &'t26 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't27)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't28)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't29)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't30)>>>>>, ()}], impl core::future::future::Future, impl core::future::future::Future, (), std::result::Result<schema::Human, juniper::executor::FieldError>, std::result::Result<std::option::Option<(&'t4 (), schema::Human)>, juniper::executor::FieldError>, &'t5 (), schema::Human, juniper::executor::Executor<'t6, ()>, &'t7 juniper::executor::Executor<'t8, ()>, (), &'t9 (), &'t10 (), &'t11 schema::Human, &'t12 schema::Human, impl core::future::future::Future, impl core::future::future::Future, ()}]>`
= note: required because it appears within the type `impl core::future::future::Future`
= note: required by `futures_util::future::future::FutureExt::boxed`
error[E0277]: `(dyn core::future::future::Future<Output = std::result::Result<awc::response::ClientResponse, actix_http::client::error::SendRequestError>> + 'static)` cannot be sent between threads safely
--> juniper/src/schema.rs:32:1
|
32 | #[juniper::graphql_object]
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ `(dyn core::future::future::Future<Output = std::result::Result<awc::response::ClientResponse, actix_http::client::error::SendRequestError>> + 'static)` cannot be sent between threads safely
|
= help: the trait `std::marker::Send` is not implemented for `(dyn core::future::future::Future<Output = std::result::Result<awc::response::ClientResponse, actix_http::client::error::SendRequestError>> + 'static)`
= note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique<(dyn core::future::future::Future<Output = std::result::Result<awc::response::ClientResponse, actix_http::client::error::SendRequestError>> + 'static)>`
= note: required because it appears within the type `std::boxed::Box<(dyn core::future::future::Future<Output = std::result::Result<awc::response::ClientResponse, actix_http::client::error::SendRequestError>> + 'static)>`
= note: required because it appears within the type `std::pin::Pin<std::boxed::Box<(dyn core::future::future::Future<Output = std::result::Result<awc::response::ClientResponse, actix_http::client::error::SendRequestError>> + 'static)>>`
= note: required because it appears within the type `awc::sender::SendClientRequest`
= note: required because it appears within the type `for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5> {std::string::String, awc::Client, &'r awc::Client, awc::Client, &'s str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't0)>>>>>, &'t1 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't2)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't3)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't4)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't5)>>>>>, ()}`
= note: required because it appears within the type `[static generator@juniper/src/schema.rs:32:1: 32:27 args:&juniper::types::base::Arguments<'_> for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5> {std::string::String, awc::Client, &'r awc::Client, awc::Client, &'s str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't0)>>>>>, &'t1 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't2)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't3)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't4)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't5)>>>>>, ()}]`
= note: required because it appears within the type `for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5, 't6, 't7, 't8, 't9, 't10, 't11, 't12, 't13, 't14, 't15, 't16, 't17, 't18, 't19, 't20, 't21, 't22> {[static generator@juniper/src/schema.rs:32:1: 32:27 args:&'r juniper::types::base::Arguments<'s> for<'t23, 't24, 't25, 't26, 't27, 't28, 't29, 't30> {std::string::String, awc::Client, &'t23 awc::Client, awc::Client, &'t24 str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't25)>>>>>, &'t26 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't27)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't28)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't29)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't30)>>>>>, ()}], impl core::future::future::Future, impl core::future::future::Future, (), std::result::Result<schema::Human, juniper::executor::FieldError>, std::result::Result<std::option::Option<(&'t4 (), schema::Human)>, juniper::executor::FieldError>, &'t5 (), schema::Human, juniper::executor::Executor<'t6, ()>, &'t7 juniper::executor::Executor<'t8, ()>, (), &'t9 (), &'t10 (), &'t11 schema::Human, &'t12 schema::Human, impl core::future::future::Future, impl core::future::future::Future, ()}`
= note: required because it appears within the type `[static generator@juniper/src/schema.rs:32:1: 32:27 args:&juniper::types::base::Arguments<'_>, executor:&juniper::executor::Executor<'_, ()> for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5, 't6, 't7, 't8, 't9, 't10, 't11, 't12, 't13, 't14, 't15, 't16, 't17, 't18, 't19, 't20, 't21, 't22> {[static generator@juniper/src/schema.rs:32:1: 32:27 args:&'r juniper::types::base::Arguments<'s> for<'t23, 't24, 't25, 't26, 't27, 't28, 't29, 't30> {std::string::String, awc::Client, &'t23 awc::Client, awc::Client, &'t24 str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't25)>>>>>, &'t26 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't27)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't28)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't29)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't30)>>>>>, ()}], impl core::future::future::Future, impl core::future::future::Future, (), std::result::Result<schema::Human, juniper::executor::FieldError>, std::result::Result<std::option::Option<(&'t4 (), schema::Human)>, juniper::executor::FieldError>, &'t5 (), schema::Human, juniper::executor::Executor<'t6, ()>, &'t7 juniper::executor::Executor<'t8, ()>, (), &'t9 (), &'t10 (), &'t11 schema::Human, &'t12 schema::Human, impl core::future::future::Future, impl core::future::future::Future, ()}]`
= note: required because it appears within the type `std::future::GenFuture<[static generator@juniper/src/schema.rs:32:1: 32:27 args:&juniper::types::base::Arguments<'_>, executor:&juniper::executor::Executor<'_, ()> for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5, 't6, 't7, 't8, 't9, 't10, 't11, 't12, 't13, 't14, 't15, 't16, 't17, 't18, 't19, 't20, 't21, 't22> {[static generator@juniper/src/schema.rs:32:1: 32:27 args:&'r juniper::types::base::Arguments<'s> for<'t23, 't24, 't25, 't26, 't27, 't28, 't29, 't30> {std::string::String, awc::Client, &'t23 awc::Client, awc::Client, &'t24 str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't25)>>>>>, &'t26 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't27)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't28)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't29)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't30)>>>>>, ()}], impl core::future::future::Future, impl core::future::future::Future, (), std::result::Result<schema::Human, juniper::executor::FieldError>, std::result::Result<std::option::Option<(&'t4 (), schema::Human)>, juniper::executor::FieldError>, &'t5 (), schema::Human, juniper::executor::Executor<'t6, ()>, &'t7 juniper::executor::Executor<'t8, ()>, (), &'t9 (), &'t10 (), &'t11 schema::Human, &'t12 schema::Human, impl core::future::future::Future, impl core::future::future::Future, ()}]>`
= note: required because it appears within the type `impl core::future::future::Future`
= note: required by `futures_util::future::future::FutureExt::boxed`
error[E0277]: `dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>>` cannot be sent between threads safely
--> juniper/src/schema.rs:32:1
|
32 | #[juniper::graphql_object]
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ `dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>>` cannot be sent between threads safely
|
= help: the trait `std::marker::Send` is not implemented for `dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>>`
= note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique<dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>>>`
= note: required because it appears within the type `std::boxed::Box<dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>>>`
= note: required because it appears within the type `std::pin::Pin<std::boxed::Box<dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>>>>`
= note: required because it appears within the type `actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>>>>>`
= note: required because it appears within the type `actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>>>>>>`
= note: required because it appears within the type `actix_http::payload::Payload<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>>>>>>>`
= note: required because it appears within the type `awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>>>>>>>`
= note: required because it appears within the type `for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5> {std::string::String, awc::Client, &'r awc::Client, awc::Client, &'s str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't0)>>>>>, &'t1 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't2)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't3)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't4)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't5)>>>>>, ()}`
= note: required because it appears within the type `[static generator@juniper/src/schema.rs:32:1: 32:27 args:&juniper::types::base::Arguments<'_> for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5> {std::string::String, awc::Client, &'r awc::Client, awc::Client, &'s str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't0)>>>>>, &'t1 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't2)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't3)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't4)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't5)>>>>>, ()}]`
= note: required because it appears within the type `for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5, 't6, 't7, 't8, 't9, 't10, 't11, 't12, 't13, 't14, 't15, 't16, 't17, 't18, 't19, 't20, 't21, 't22> {[static generator@juniper/src/schema.rs:32:1: 32:27 args:&'r juniper::types::base::Arguments<'s> for<'t23, 't24, 't25, 't26, 't27, 't28, 't29, 't30> {std::string::String, awc::Client, &'t23 awc::Client, awc::Client, &'t24 str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't25)>>>>>, &'t26 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't27)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't28)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't29)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't30)>>>>>, ()}], impl core::future::future::Future, impl core::future::future::Future, (), std::result::Result<schema::Human, juniper::executor::FieldError>, std::result::Result<std::option::Option<(&'t4 (), schema::Human)>, juniper::executor::FieldError>, &'t5 (), schema::Human, juniper::executor::Executor<'t6, ()>, &'t7 juniper::executor::Executor<'t8, ()>, (), &'t9 (), &'t10 (), &'t11 schema::Human, &'t12 schema::Human, impl core::future::future::Future, impl core::future::future::Future, ()}`
= note: required because it appears within the type `[static generator@juniper/src/schema.rs:32:1: 32:27 args:&juniper::types::base::Arguments<'_>, executor:&juniper::executor::Executor<'_, ()> for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5, 't6, 't7, 't8, 't9, 't10, 't11, 't12, 't13, 't14, 't15, 't16, 't17, 't18, 't19, 't20, 't21, 't22> {[static generator@juniper/src/schema.rs:32:1: 32:27 args:&'r juniper::types::base::Arguments<'s> for<'t23, 't24, 't25, 't26, 't27, 't28, 't29, 't30> {std::string::String, awc::Client, &'t23 awc::Client, awc::Client, &'t24 str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't25)>>>>>, &'t26 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't27)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't28)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't29)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't30)>>>>>, ()}], impl core::future::future::Future, impl core::future::future::Future, (), std::result::Result<schema::Human, juniper::executor::FieldError>, std::result::Result<std::option::Option<(&'t4 (), schema::Human)>, juniper::executor::FieldError>, &'t5 (), schema::Human, juniper::executor::Executor<'t6, ()>, &'t7 juniper::executor::Executor<'t8, ()>, (), &'t9 (), &'t10 (), &'t11 schema::Human, &'t12 schema::Human, impl core::future::future::Future, impl core::future::future::Future, ()}]`
= note: required because it appears within the type `std::future::GenFuture<[static generator@juniper/src/schema.rs:32:1: 32:27 args:&juniper::types::base::Arguments<'_>, executor:&juniper::executor::Executor<'_, ()> for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5, 't6, 't7, 't8, 't9, 't10, 't11, 't12, 't13, 't14, 't15, 't16, 't17, 't18, 't19, 't20, 't21, 't22> {[static generator@juniper/src/schema.rs:32:1: 32:27 args:&'r juniper::types::base::Arguments<'s> for<'t23, 't24, 't25, 't26, 't27, 't28, 't29, 't30> {std::string::String, awc::Client, &'t23 awc::Client, awc::Client, &'t24 str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't25)>>>>>, &'t26 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't27)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't28)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't29)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't30)>>>>>, ()}], impl core::future::future::Future, impl core::future::future::Future, (), std::result::Result<schema::Human, juniper::executor::FieldError>, std::result::Result<std::option::Option<(&'t4 (), schema::Human)>, juniper::executor::FieldError>, &'t5 (), schema::Human, juniper::executor::Executor<'t6, ()>, &'t7 juniper::executor::Executor<'t8, ()>, (), &'t9 (), &'t10 (), &'t11 schema::Human, &'t12 schema::Human, impl core::future::future::Future, impl core::future::future::Future, ()}]>`
= note: required because it appears within the type `impl core::future::future::Future`
= note: required by `futures_util::future::future::FutureExt::boxed`
error[E0277]: `(dyn actix_http::error::ResponseError + 'static)` cannot be sent between threads safely
--> juniper/src/schema.rs:32:1
|
32 | #[juniper::graphql_object]
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ `(dyn actix_http::error::ResponseError + 'static)` cannot be sent between threads safely
|
= help: the trait `std::marker::Send` is not implemented for `(dyn actix_http::error::ResponseError + 'static)`
= note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique<(dyn actix_http::error::ResponseError + 'static)>`
= note: required because it appears within the type `std::boxed::Box<(dyn actix_http::error::ResponseError + 'static)>`
= note: required because it appears within the type `actix_http::error::Error`
= note: required because it appears within the type `actix_http::client::error::SendRequestError`
= note: required because it appears within the type `std::option::Option<actix_http::client::error::SendRequestError>`
= note: required because it appears within the type `awc::sender::SendClientRequest`
= note: required because it appears within the type `for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5> {std::string::String, awc::Client, &'r awc::Client, awc::Client, &'s str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't0)>>>>>, &'t1 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't2)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't3)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't4)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't5)>>>>>, ()}`
= note: required because it appears within the type `[static generator@juniper/src/schema.rs:32:1: 32:27 args:&juniper::types::base::Arguments<'_> for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5> {std::string::String, awc::Client, &'r awc::Client, awc::Client, &'s str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't0)>>>>>, &'t1 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't2)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't3)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't4)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't5)>>>>>, ()}]`
= note: required because it appears within the type `for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5, 't6, 't7, 't8, 't9, 't10, 't11, 't12, 't13, 't14, 't15, 't16, 't17, 't18, 't19, 't20, 't21, 't22> {[static generator@juniper/src/schema.rs:32:1: 32:27 args:&'r juniper::types::base::Arguments<'s> for<'t23, 't24, 't25, 't26, 't27, 't28, 't29, 't30> {std::string::String, awc::Client, &'t23 awc::Client, awc::Client, &'t24 str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't25)>>>>>, &'t26 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't27)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't28)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't29)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't30)>>>>>, ()}], impl core::future::future::Future, impl core::future::future::Future, (), std::result::Result<schema::Human, juniper::executor::FieldError>, std::result::Result<std::option::Option<(&'t4 (), schema::Human)>, juniper::executor::FieldError>, &'t5 (), schema::Human, juniper::executor::Executor<'t6, ()>, &'t7 juniper::executor::Executor<'t8, ()>, (), &'t9 (), &'t10 (), &'t11 schema::Human, &'t12 schema::Human, impl core::future::future::Future, impl core::future::future::Future, ()}`
= note: required because it appears within the type `[static generator@juniper/src/schema.rs:32:1: 32:27 args:&juniper::types::base::Arguments<'_>, executor:&juniper::executor::Executor<'_, ()> for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5, 't6, 't7, 't8, 't9, 't10, 't11, 't12, 't13, 't14, 't15, 't16, 't17, 't18, 't19, 't20, 't21, 't22> {[static generator@juniper/src/schema.rs:32:1: 32:27 args:&'r juniper::types::base::Arguments<'s> for<'t23, 't24, 't25, 't26, 't27, 't28, 't29, 't30> {std::string::String, awc::Client, &'t23 awc::Client, awc::Client, &'t24 str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't25)>>>>>, &'t26 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't27)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't28)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't29)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't30)>>>>>, ()}], impl core::future::future::Future, impl core::future::future::Future, (), std::result::Result<schema::Human, juniper::executor::FieldError>, std::result::Result<std::option::Option<(&'t4 (), schema::Human)>, juniper::executor::FieldError>, &'t5 (), schema::Human, juniper::executor::Executor<'t6, ()>, &'t7 juniper::executor::Executor<'t8, ()>, (), &'t9 (), &'t10 (), &'t11 schema::Human, &'t12 schema::Human, impl core::future::future::Future, impl core::future::future::Future, ()}]`
= note: required because it appears within the type `std::future::GenFuture<[static generator@juniper/src/schema.rs:32:1: 32:27 args:&juniper::types::base::Arguments<'_>, executor:&juniper::executor::Executor<'_, ()> for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5, 't6, 't7, 't8, 't9, 't10, 't11, 't12, 't13, 't14, 't15, 't16, 't17, 't18, 't19, 't20, 't21, 't22> {[static generator@juniper/src/schema.rs:32:1: 32:27 args:&'r juniper::types::base::Arguments<'s> for<'t23, 't24, 't25, 't26, 't27, 't28, 't29, 't30> {std::string::String, awc::Client, &'t23 awc::Client, awc::Client, &'t24 str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't25)>>>>>, &'t26 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't27)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't28)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't29)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't30)>>>>>, ()}], impl core::future::future::Future, impl core::future::future::Future, (), std::result::Result<schema::Human, juniper::executor::FieldError>, std::result::Result<std::option::Option<(&'t4 (), schema::Human)>, juniper::executor::FieldError>, &'t5 (), schema::Human, juniper::executor::Executor<'t6, ()>, &'t7 juniper::executor::Executor<'t8, ()>, (), &'t9 (), &'t10 (), &'t11 schema::Human, &'t12 schema::Human, impl core::future::future::Future, impl core::future::future::Future, ()}]>`
= note: required because it appears within the type `impl core::future::future::Future`
= note: required by `futures_util::future::future::FutureExt::boxed`
error[E0277]: `(dyn std::any::Any + 'static)` cannot be sent between threads safely
--> juniper/src/schema.rs:32:1
|
32 | #[juniper::graphql_object]
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ `(dyn std::any::Any + 'static)` cannot be sent between threads safely
|
= help: the trait `std::marker::Send` is not implemented for `(dyn std::any::Any + 'static)`
= note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique<(dyn std::any::Any + 'static)>`
= note: required because it appears within the type `std::boxed::Box<(dyn std::any::Any + 'static)>`
= note: required because it appears within the type `(std::any::TypeId, std::boxed::Box<(dyn std::any::Any + 'static)>)`
= note: required because of the requirements on the impl of `std::marker::Send` for `hashbrown::raw::RawTable<(std::any::TypeId, std::boxed::Box<(dyn std::any::Any + 'static)>)>`
= note: required because it appears within the type `hashbrown::map::HashMap<std::any::TypeId, std::boxed::Box<(dyn std::any::Any + 'static)>, std::hash::BuildHasherDefault<fxhash::FxHasher>>`
= note: required because it appears within the type `std::collections::HashMap<std::any::TypeId, std::boxed::Box<(dyn std::any::Any + 'static)>, std::hash::BuildHasherDefault<fxhash::FxHasher>>`
= note: required because it appears within the type `actix_http::extensions::Extensions`
= note: required because of the requirements on the impl of `std::marker::Send` for `std::cell::RefCell<actix_http::extensions::Extensions>`
= note: required because it appears within the type `actix_http::message::RequestHead`
= note: required because it appears within the type `awc::request::ClientRequest`
= note: required because it appears within the type `for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5> {std::string::String, awc::Client, &'r awc::Client, awc::Client, &'s str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't0)>>>>>, &'t1 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't2)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't3)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't4)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't5)>>>>>, ()}`
= note: required because it appears within the type `[static generator@juniper/src/schema.rs:32:1: 32:27 args:&juniper::types::base::Arguments<'_> for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5> {std::string::String, awc::Client, &'r awc::Client, awc::Client, &'s str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't0)>>>>>, &'t1 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't2)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't3)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't4)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't5)>>>>>, ()}]`
= note: required because it appears within the type `for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5, 't6, 't7, 't8, 't9, 't10, 't11, 't12, 't13, 't14, 't15, 't16, 't17, 't18, 't19, 't20, 't21, 't22> {[static generator@juniper/src/schema.rs:32:1: 32:27 args:&'r juniper::types::base::Arguments<'s> for<'t23, 't24, 't25, 't26, 't27, 't28, 't29, 't30> {std::string::String, awc::Client, &'t23 awc::Client, awc::Client, &'t24 str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't25)>>>>>, &'t26 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't27)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't28)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't29)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't30)>>>>>, ()}], impl core::future::future::Future, impl core::future::future::Future, (), std::result::Result<schema::Human, juniper::executor::FieldError>, std::result::Result<std::option::Option<(&'t4 (), schema::Human)>, juniper::executor::FieldError>, &'t5 (), schema::Human, juniper::executor::Executor<'t6, ()>, &'t7 juniper::executor::Executor<'t8, ()>, (), &'t9 (), &'t10 (), &'t11 schema::Human, &'t12 schema::Human, impl core::future::future::Future, impl core::future::future::Future, ()}`
= note: required because it appears within the type `[static generator@juniper/src/schema.rs:32:1: 32:27 args:&juniper::types::base::Arguments<'_>, executor:&juniper::executor::Executor<'_, ()> for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5, 't6, 't7, 't8, 't9, 't10, 't11, 't12, 't13, 't14, 't15, 't16, 't17, 't18, 't19, 't20, 't21, 't22> {[static generator@juniper/src/schema.rs:32:1: 32:27 args:&'r juniper::types::base::Arguments<'s> for<'t23, 't24, 't25, 't26, 't27, 't28, 't29, 't30> {std::string::String, awc::Client, &'t23 awc::Client, awc::Client, &'t24 str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't25)>>>>>, &'t26 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't27)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't28)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't29)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't30)>>>>>, ()}], impl core::future::future::Future, impl core::future::future::Future, (), std::result::Result<schema::Human, juniper::executor::FieldError>, std::result::Result<std::option::Option<(&'t4 (), schema::Human)>, juniper::executor::FieldError>, &'t5 (), schema::Human, juniper::executor::Executor<'t6, ()>, &'t7 juniper::executor::Executor<'t8, ()>, (), &'t9 (), &'t10 (), &'t11 schema::Human, &'t12 schema::Human, impl core::future::future::Future, impl core::future::future::Future, ()}]`
= note: required because it appears within the type `std::future::GenFuture<[static generator@juniper/src/schema.rs:32:1: 32:27 args:&juniper::types::base::Arguments<'_>, executor:&juniper::executor::Executor<'_, ()> for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5, 't6, 't7, 't8, 't9, 't10, 't11, 't12, 't13, 't14, 't15, 't16, 't17, 't18, 't19, 't20, 't21, 't22> {[static generator@juniper/src/schema.rs:32:1: 32:27 args:&'r juniper::types::base::Arguments<'s> for<'t23, 't24, 't25, 't26, 't27, 't28, 't29, 't30> {std::string::String, awc::Client, &'t23 awc::Client, awc::Client, &'t24 str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't25)>>>>>, &'t26 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't27)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't28)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't29)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't30)>>>>>, ()}], impl core::future::future::Future, impl core::future::future::Future, (), std::result::Result<schema::Human, juniper::executor::FieldError>, std::result::Result<std::option::Option<(&'t4 (), schema::Human)>, juniper::executor::FieldError>, &'t5 (), schema::Human, juniper::executor::Executor<'t6, ()>, &'t7 juniper::executor::Executor<'t8, ()>, (), &'t9 (), &'t10 (), &'t11 schema::Human, &'t12 schema::Human, impl core::future::future::Future, impl core::future::future::Future, ()}]>`
= note: required because it appears within the type `impl core::future::future::Future`
= note: required by `futures_util::future::future::FutureExt::boxed`
error[E0277]: `dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>>` cannot be sent between threads safely
--> juniper/src/schema.rs:32:1
|
32 | #[juniper::graphql_object]
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ `dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>>` cannot be sent between threads safely
|
= help: the trait `std::marker::Send` is not implemented for `dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>>`
= note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique<dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>>>`
= note: required because it appears within the type `std::boxed::Box<dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>>>`
= note: required because it appears within the type `std::pin::Pin<std::boxed::Box<dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>>>>`
= note: required because it appears within the type `actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>>>>>`
= note: required because it appears within the type `actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>>>>>>`
= note: required because it appears within the type `actix_http::payload::Payload<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>>>>>>>`
= note: required because it appears within the type `awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>>>>>>>`
= note: required because it appears within the type `for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5> {std::string::String, awc::Client, &'r awc::Client, awc::Client, &'s str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't0)>>>>>, &'t1 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't2)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't3)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't4)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't5)>>>>>, ()}`
= note: required because it appears within the type `[static generator@juniper/src/schema.rs:32:1: 32:27 args:&juniper::types::base::Arguments<'_> for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5> {std::string::String, awc::Client, &'r awc::Client, awc::Client, &'s str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't0)>>>>>, &'t1 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't2)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't3)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't4)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't5)>>>>>, ()}]`
= note: required because it appears within the type `for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5, 't6, 't7, 't8, 't9, 't10, 't11, 't12, 't13, 't14, 't15, 't16, 't17, 't18, 't19, 't20, 't21, 't22> {[static generator@juniper/src/schema.rs:32:1: 32:27 args:&'r juniper::types::base::Arguments<'s> for<'t23, 't24, 't25, 't26, 't27, 't28, 't29, 't30> {std::string::String, awc::Client, &'t23 awc::Client, awc::Client, &'t24 str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't25)>>>>>, &'t26 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't27)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't28)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't29)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't30)>>>>>, ()}], impl core::future::future::Future, impl core::future::future::Future, (), std::result::Result<schema::Human, juniper::executor::FieldError>, std::result::Result<std::option::Option<(&'t4 (), schema::Human)>, juniper::executor::FieldError>, &'t5 (), schema::Human, juniper::executor::Executor<'t6, ()>, &'t7 juniper::executor::Executor<'t8, ()>, (), &'t9 (), &'t10 (), &'t11 schema::Human, &'t12 schema::Human, impl core::future::future::Future, impl core::future::future::Future, ()}`
= note: required because it appears within the type `[static generator@juniper/src/schema.rs:32:1: 32:27 args:&juniper::types::base::Arguments<'_>, executor:&juniper::executor::Executor<'_, ()> for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5, 't6, 't7, 't8, 't9, 't10, 't11, 't12, 't13, 't14, 't15, 't16, 't17, 't18, 't19, 't20, 't21, 't22> {[static generator@juniper/src/schema.rs:32:1: 32:27 args:&'r juniper::types::base::Arguments<'s> for<'t23, 't24, 't25, 't26, 't27, 't28, 't29, 't30> {std::string::String, awc::Client, &'t23 awc::Client, awc::Client, &'t24 str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't25)>>>>>, &'t26 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't27)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't28)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't29)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't30)>>>>>, ()}], impl core::future::future::Future, impl core::future::future::Future, (), std::result::Result<schema::Human, juniper::executor::FieldError>, std::result::Result<std::option::Option<(&'t4 (), schema::Human)>, juniper::executor::FieldError>, &'t5 (), schema::Human, juniper::executor::Executor<'t6, ()>, &'t7 juniper::executor::Executor<'t8, ()>, (), &'t9 (), &'t10 (), &'t11 schema::Human, &'t12 schema::Human, impl core::future::future::Future, impl core::future::future::Future, ()}]`
= note: required because it appears within the type `std::future::GenFuture<[static generator@juniper/src/schema.rs:32:1: 32:27 args:&juniper::types::base::Arguments<'_>, executor:&juniper::executor::Executor<'_, ()> for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5, 't6, 't7, 't8, 't9, 't10, 't11, 't12, 't13, 't14, 't15, 't16, 't17, 't18, 't19, 't20, 't21, 't22> {[static generator@juniper/src/schema.rs:32:1: 32:27 args:&'r juniper::types::base::Arguments<'s> for<'t23, 't24, 't25, 't26, 't27, 't28, 't29, 't30> {std::string::String, awc::Client, &'t23 awc::Client, awc::Client, &'t24 str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't25)>>>>>, &'t26 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't27)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't28)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't29)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't30)>>>>>, ()}], impl core::future::future::Future, impl core::future::future::Future, (), std::result::Result<schema::Human, juniper::executor::FieldError>, std::result::Result<std::option::Option<(&'t4 (), schema::Human)>, juniper::executor::FieldError>, &'t5 (), schema::Human, juniper::executor::Executor<'t6, ()>, &'t7 juniper::executor::Executor<'t8, ()>, (), &'t9 (), &'t10 (), &'t11 schema::Human, &'t12 schema::Human, impl core::future::future::Future, impl core::future::future::Future, ()}]>`
= note: required because it appears within the type `impl core::future::future::Future`
= note: required by `futures_util::future::future::FutureExt::boxed`
error[E0277]: `(dyn std::any::Any + 'static)` cannot be sent between threads safely
--> juniper/src/schema.rs:32:1
|
32 | #[juniper::graphql_object]
| ^^^^^^^^^^^^^^^^^^^^^^^^^^ `(dyn std::any::Any + 'static)` cannot be sent between threads safely
|
= help: the trait `std::marker::Send` is not implemented for `(dyn std::any::Any + 'static)`
= note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique<(dyn std::any::Any + 'static)>`
= note: required because it appears within the type `std::boxed::Box<(dyn std::any::Any + 'static)>`
= note: required because it appears within the type `(std::any::TypeId, std::boxed::Box<(dyn std::any::Any + 'static)>)`
= note: required because of the requirements on the impl of `std::marker::Send` for `hashbrown::raw::RawTable<(std::any::TypeId, std::boxed::Box<(dyn std::any::Any + 'static)>)>`
= note: required because it appears within the type `hashbrown::map::HashMap<std::any::TypeId, std::boxed::Box<(dyn std::any::Any + 'static)>, std::hash::BuildHasherDefault<fxhash::FxHasher>>`
= note: required because it appears within the type `std::collections::HashMap<std::any::TypeId, std::boxed::Box<(dyn std::any::Any + 'static)>, std::hash::BuildHasherDefault<fxhash::FxHasher>>`
= note: required because it appears within the type `actix_http::extensions::Extensions`
= note: required because of the requirements on the impl of `std::marker::Send` for `std::cell::RefCell<actix_http::extensions::Extensions>`
= note: required because it appears within the type `actix_http::message::RequestHead`
= note: required because it appears within the type `awc::request::ClientRequest`
= note: required because it appears within the type `for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5> {std::string::String, awc::Client, &'r awc::Client, awc::Client, &'s str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't0)>>>>>, &'t1 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't2)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't3)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't4)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't5)>>>>>, ()}`
= note: required because it appears within the type `[static generator@juniper/src/schema.rs:32:1: 32:27 args:&juniper::types::base::Arguments<'_> for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5> {std::string::String, awc::Client, &'r awc::Client, awc::Client, &'s str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't0)>>>>>, &'t1 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't2)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't3)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't4)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't5)>>>>>, ()}]`
= note: required because it appears within the type `for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5, 't6, 't7, 't8, 't9, 't10, 't11, 't12, 't13, 't14, 't15, 't16, 't17, 't18, 't19, 't20, 't21, 't22> {[static generator@juniper/src/schema.rs:32:1: 32:27 args:&'r juniper::types::base::Arguments<'s> for<'t23, 't24, 't25, 't26, 't27, 't28, 't29, 't30> {std::string::String, awc::Client, &'t23 awc::Client, awc::Client, &'t24 str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't25)>>>>>, &'t26 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't27)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't28)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't29)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't30)>>>>>, ()}], impl core::future::future::Future, impl core::future::future::Future, (), std::result::Result<schema::Human, juniper::executor::FieldError>, std::result::Result<std::option::Option<(&'t4 (), schema::Human)>, juniper::executor::FieldError>, &'t5 (), schema::Human, juniper::executor::Executor<'t6, ()>, &'t7 juniper::executor::Executor<'t8, ()>, (), &'t9 (), &'t10 (), &'t11 schema::Human, &'t12 schema::Human, impl core::future::future::Future, impl core::future::future::Future, ()}`
= note: required because it appears within the type `[static generator@juniper/src/schema.rs:32:1: 32:27 args:&juniper::types::base::Arguments<'_>, executor:&juniper::executor::Executor<'_, ()> for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5, 't6, 't7, 't8, 't9, 't10, 't11, 't12, 't13, 't14, 't15, 't16, 't17, 't18, 't19, 't20, 't21, 't22> {[static generator@juniper/src/schema.rs:32:1: 32:27 args:&'r juniper::types::base::Arguments<'s> for<'t23, 't24, 't25, 't26, 't27, 't28, 't29, 't30> {std::string::String, awc::Client, &'t23 awc::Client, awc::Client, &'t24 str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't25)>>>>>, &'t26 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't27)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't28)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't29)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't30)>>>>>, ()}], impl core::future::future::Future, impl core::future::future::Future, (), std::result::Result<schema::Human, juniper::executor::FieldError>, std::result::Result<std::option::Option<(&'t4 (), schema::Human)>, juniper::executor::FieldError>, &'t5 (), schema::Human, juniper::executor::Executor<'t6, ()>, &'t7 juniper::executor::Executor<'t8, ()>, (), &'t9 (), &'t10 (), &'t11 schema::Human, &'t12 schema::Human, impl core::future::future::Future, impl core::future::future::Future, ()}]`
= note: required because it appears within the type `std::future::GenFuture<[static generator@juniper/src/schema.rs:32:1: 32:27 args:&juniper::types::base::Arguments<'_>, executor:&juniper::executor::Executor<'_, ()> for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5, 't6, 't7, 't8, 't9, 't10, 't11, 't12, 't13, 't14, 't15, 't16, 't17, 't18, 't19, 't20, 't21, 't22> {[static generator@juniper/src/schema.rs:32:1: 32:27 args:&'r juniper::types::base::Arguments<'s> for<'t23, 't24, 't25, 't26, 't27, 't28, 't29, 't30> {std::string::String, awc::Client, &'t23 awc::Client, awc::Client, &'t24 str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't25)>>>>>, &'t26 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't27)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't28)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't29)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't30)>>>>>, ()}], impl core::future::future::Future, impl core::future::future::Future, (), std::result::Result<schema::Human, juniper::executor::FieldError>, std::result::Result<std::option::Option<(&'t4 (), schema::Human)>, juniper::executor::FieldError>, &'t5 (), schema::Human, juniper::executor::Executor<'t6, ()>, &'t7 juniper::executor::Executor<'t8, ()>, (), &'t9 (), &'t10 (), &'t11 schema::Human, &'t12 schema::Human, impl core::future::future::Future, impl core::future::future::Future, ()}]>`
= note: required because it appears within the type `impl core::future::future::Future`
= note: required by `futures_util::future::future::FutureExt::boxed`
To Reproduce
I created a minimum reproducing repository here, based on the actix web example: https://github.com/arlyon/examples/tree/juniper-actix-error/juniper
Expected behavior
I would expect this to work correctly. It should be noted that hyper works fine, but I'd like to avoid using _another_ client when I have one baked in.
Hello @arlyon , You may need reqwest. By default actix-web starts mutiple workers and every worker owns its proper data. So basically, it's designed like this.
Seems like its the error handling that's at fault here? Does it compile if you use .unwrap instead of ? on the .send().await line?
@robjtede Converting all the ? into unwraps spits out this:
out.log
Compiling juniper-example v0.2.0 (/Users/arlyon/Downloads/examples-juniper-actix-error/juniper)
error[E0277]: `std::rc::Rc<awc::ClientConfig>` cannot be sent between threads safely
--> juniper/src/schema.rs:38:1
|
38 | #[juniper::graphql_object(Context=Context)]
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `std::rc::Rc<awc::ClientConfig>` cannot be sent between threads safely
|
= help: within `impl core::future::future::Future`, the trait `std::marker::Send` is not implemented for `std::rc::Rc<awc::ClientConfig>`
= note: required because it appears within the type `awc::Client`
= note: required because it appears within the type `for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5> {std::string::String, awc::Client, &'r awc::Client, awc::Client, &'s str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't0)>>>>>, &'t1 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't2)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't3)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't4)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't5)>>>>>, ()}`
= note: required because it appears within the type `[static generator@juniper/src/schema.rs:38:1: 38:44 args:&juniper::types::base::Arguments<'_> for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5> {std::string::String, awc::Client, &'r awc::Client, awc::Client, &'s str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't0)>>>>>, &'t1 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't2)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't3)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't4)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't5)>>>>>, ()}]`
= note: required because it appears within the type `for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5, 't6, 't7, 't8, 't9, 't10, 't11, 't12, 't13, 't14, 't15, 't16, 't17, 't18, 't19, 't20, 't21, 't22, 't23, 't24, 't25, 't26, 't27, 't28> {[static generator@juniper/src/schema.rs:38:1: 38:44 args:&'r juniper::types::base::Arguments<'s> for<'t29, 't30, 't31, 't32, 't33, 't34, 't35, 't36> {std::string::String, awc::Client, &'t29 awc::Client, awc::Client, &'t30 str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't31)>>>>>, &'t32 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't33)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't34)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't35)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't36)>>>>>, ()}], impl core::future::future::Future, impl core::future::future::Future, (), std::result::Result<schema::Human, juniper::executor::FieldError>, std::result::Result<std::option::Option<(&'t4 (), schema::Human)>, juniper::executor::FieldError>, &'t5 (), schema::Human, juniper::executor::Executor<'t6, 't7, ()>, &'t8 juniper::executor::Executor<'t9, 't10, ()>, (), &'t11 (), &'t12 (), &'t13 schema::Human, &'t14 schema::Human, impl core::future::future::Future, impl core::future::future::Future, ()}`
= note: required because it appears within the type `[static generator@juniper/src/schema.rs:38:1: 38:44 args:&juniper::types::base::Arguments<'_>, executor:&juniper::executor::Executor<'_, '_, schema::Context> for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5, 't6, 't7, 't8, 't9, 't10, 't11, 't12, 't13, 't14, 't15, 't16, 't17, 't18, 't19, 't20, 't21, 't22, 't23, 't24, 't25, 't26, 't27, 't28> {[static generator@juniper/src/schema.rs:38:1: 38:44 args:&'r juniper::types::base::Arguments<'s> for<'t29, 't30, 't31, 't32, 't33, 't34, 't35, 't36> {std::string::String, awc::Client, &'t29 awc::Client, awc::Client, &'t30 str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't31)>>>>>, &'t32 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't33)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't34)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't35)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't36)>>>>>, ()}], impl core::future::future::Future, impl core::future::future::Future, (), std::result::Result<schema::Human, juniper::executor::FieldError>, std::result::Result<std::option::Option<(&'t4 (), schema::Human)>, juniper::executor::FieldError>, &'t5 (), schema::Human, juniper::executor::Executor<'t6, 't7, ()>, &'t8 juniper::executor::Executor<'t9, 't10, ()>, (), &'t11 (), &'t12 (), &'t13 schema::Human, &'t14 schema::Human, impl core::future::future::Future, impl core::future::future::Future, ()}]`
= note: required because it appears within the type `std::future::GenFuture<[static generator@juniper/src/schema.rs:38:1: 38:44 args:&juniper::types::base::Arguments<'_>, executor:&juniper::executor::Executor<'_, '_, schema::Context> for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5, 't6, 't7, 't8, 't9, 't10, 't11, 't12, 't13, 't14, 't15, 't16, 't17, 't18, 't19, 't20, 't21, 't22, 't23, 't24, 't25, 't26, 't27, 't28> {[static generator@juniper/src/schema.rs:38:1: 38:44 args:&'r juniper::types::base::Arguments<'s> for<'t29, 't30, 't31, 't32, 't33, 't34, 't35, 't36> {std::string::String, awc::Client, &'t29 awc::Client, awc::Client, &'t30 str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't31)>>>>>, &'t32 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't33)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't34)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't35)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't36)>>>>>, ()}], impl core::future::future::Future, impl core::future::future::Future, (), std::result::Result<schema::Human, juniper::executor::FieldError>, std::result::Result<std::option::Option<(&'t4 (), schema::Human)>, juniper::executor::FieldError>, &'t5 (), schema::Human, juniper::executor::Executor<'t6, 't7, ()>, &'t8 juniper::executor::Executor<'t9, 't10, ()>, (), &'t11 (), &'t12 (), &'t13 schema::Human, &'t14 schema::Human, impl core::future::future::Future, impl core::future::future::Future, ()}]>`
= note: required because it appears within the type `impl core::future::future::Future`
= note: required by `futures_util::future::future::FutureExt::boxed`
error[E0277]: `std::rc::Rc<awc::ClientConfig>` cannot be shared between threads safely
--> juniper/src/schema.rs:38:1
|
38 | #[juniper::graphql_object(Context=Context)]
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `std::rc::Rc<awc::ClientConfig>` cannot be shared between threads safely
|
= help: within `awc::Client`, the trait `std::marker::Sync` is not implemented for `std::rc::Rc<awc::ClientConfig>`
= note: required because it appears within the type `awc::Client`
= note: required because of the requirements on the impl of `std::marker::Send` for `&awc::Client`
= note: required because it appears within the type `for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5> {std::string::String, awc::Client, &'r awc::Client, awc::Client, &'s str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't0)>>>>>, &'t1 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't2)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't3)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't4)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't5)>>>>>, ()}`
= note: required because it appears within the type `[static generator@juniper/src/schema.rs:38:1: 38:44 args:&juniper::types::base::Arguments<'_> for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5> {std::string::String, awc::Client, &'r awc::Client, awc::Client, &'s str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't0)>>>>>, &'t1 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't2)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't3)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't4)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't5)>>>>>, ()}]`
= note: required because it appears within the type `for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5, 't6, 't7, 't8, 't9, 't10, 't11, 't12, 't13, 't14, 't15, 't16, 't17, 't18, 't19, 't20, 't21, 't22, 't23, 't24, 't25, 't26, 't27, 't28> {[static generator@juniper/src/schema.rs:38:1: 38:44 args:&'r juniper::types::base::Arguments<'s> for<'t29, 't30, 't31, 't32, 't33, 't34, 't35, 't36> {std::string::String, awc::Client, &'t29 awc::Client, awc::Client, &'t30 str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't31)>>>>>, &'t32 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't33)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't34)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't35)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't36)>>>>>, ()}], impl core::future::future::Future, impl core::future::future::Future, (), std::result::Result<schema::Human, juniper::executor::FieldError>, std::result::Result<std::option::Option<(&'t4 (), schema::Human)>, juniper::executor::FieldError>, &'t5 (), schema::Human, juniper::executor::Executor<'t6, 't7, ()>, &'t8 juniper::executor::Executor<'t9, 't10, ()>, (), &'t11 (), &'t12 (), &'t13 schema::Human, &'t14 schema::Human, impl core::future::future::Future, impl core::future::future::Future, ()}`
= note: required because it appears within the type `[static generator@juniper/src/schema.rs:38:1: 38:44 args:&juniper::types::base::Arguments<'_>, executor:&juniper::executor::Executor<'_, '_, schema::Context> for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5, 't6, 't7, 't8, 't9, 't10, 't11, 't12, 't13, 't14, 't15, 't16, 't17, 't18, 't19, 't20, 't21, 't22, 't23, 't24, 't25, 't26, 't27, 't28> {[static generator@juniper/src/schema.rs:38:1: 38:44 args:&'r juniper::types::base::Arguments<'s> for<'t29, 't30, 't31, 't32, 't33, 't34, 't35, 't36> {std::string::String, awc::Client, &'t29 awc::Client, awc::Client, &'t30 str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't31)>>>>>, &'t32 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't33)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't34)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't35)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't36)>>>>>, ()}], impl core::future::future::Future, impl core::future::future::Future, (), std::result::Result<schema::Human, juniper::executor::FieldError>, std::result::Result<std::option::Option<(&'t4 (), schema::Human)>, juniper::executor::FieldError>, &'t5 (), schema::Human, juniper::executor::Executor<'t6, 't7, ()>, &'t8 juniper::executor::Executor<'t9, 't10, ()>, (), &'t11 (), &'t12 (), &'t13 schema::Human, &'t14 schema::Human, impl core::future::future::Future, impl core::future::future::Future, ()}]`
= note: required because it appears within the type `std::future::GenFuture<[static generator@juniper/src/schema.rs:38:1: 38:44 args:&juniper::types::base::Arguments<'_>, executor:&juniper::executor::Executor<'_, '_, schema::Context> for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5, 't6, 't7, 't8, 't9, 't10, 't11, 't12, 't13, 't14, 't15, 't16, 't17, 't18, 't19, 't20, 't21, 't22, 't23, 't24, 't25, 't26, 't27, 't28> {[static generator@juniper/src/schema.rs:38:1: 38:44 args:&'r juniper::types::base::Arguments<'s> for<'t29, 't30, 't31, 't32, 't33, 't34, 't35, 't36> {std::string::String, awc::Client, &'t29 awc::Client, awc::Client, &'t30 str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't31)>>>>>, &'t32 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't33)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't34)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't35)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't36)>>>>>, ()}], impl core::future::future::Future, impl core::future::future::Future, (), std::result::Result<schema::Human, juniper::executor::FieldError>, std::result::Result<std::option::Option<(&'t4 (), schema::Human)>, juniper::executor::FieldError>, &'t5 (), schema::Human, juniper::executor::Executor<'t6, 't7, ()>, &'t8 juniper::executor::Executor<'t9, 't10, ()>, (), &'t11 (), &'t12 (), &'t13 schema::Human, &'t14 schema::Human, impl core::future::future::Future, impl core::future::future::Future, ()}]>`
= note: required because it appears within the type `impl core::future::future::Future`
= note: required by `futures_util::future::future::FutureExt::boxed`
error[E0277]: `std::rc::Rc<std::cell::RefCell<actix_http::h1::payload::Inner>>` cannot be sent between threads safely
--> juniper/src/schema.rs:38:1
|
38 | #[juniper::graphql_object(Context=Context)]
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `std::rc::Rc<std::cell::RefCell<actix_http::h1::payload::Inner>>` cannot be sent between threads safely
|
= help: within `impl core::future::future::Future`, the trait `std::marker::Send` is not implemented for `std::rc::Rc<std::cell::RefCell<actix_http::h1::payload::Inner>>`
= note: required because it appears within the type `actix_http::h1::payload::Payload`
= note: required because it appears within the type `actix_http::payload::Payload<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>>>>>>>`
= note: required because it appears within the type `awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>>>>>>>`
= note: required because it appears within the type `for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5> {std::string::String, awc::Client, &'r awc::Client, awc::Client, &'s str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't0)>>>>>, &'t1 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't2)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't3)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't4)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't5)>>>>>, ()}`
= note: required because it appears within the type `[static generator@juniper/src/schema.rs:38:1: 38:44 args:&juniper::types::base::Arguments<'_> for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5> {std::string::String, awc::Client, &'r awc::Client, awc::Client, &'s str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't0)>>>>>, &'t1 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't2)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't3)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't4)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't5)>>>>>, ()}]`
= note: required because it appears within the type `for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5, 't6, 't7, 't8, 't9, 't10, 't11, 't12, 't13, 't14, 't15, 't16, 't17, 't18, 't19, 't20, 't21, 't22, 't23, 't24, 't25, 't26, 't27, 't28> {[static generator@juniper/src/schema.rs:38:1: 38:44 args:&'r juniper::types::base::Arguments<'s> for<'t29, 't30, 't31, 't32, 't33, 't34, 't35, 't36> {std::string::String, awc::Client, &'t29 awc::Client, awc::Client, &'t30 str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't31)>>>>>, &'t32 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't33)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't34)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't35)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't36)>>>>>, ()}], impl core::future::future::Future, impl core::future::future::Future, (), std::result::Result<schema::Human, juniper::executor::FieldError>, std::result::Result<std::option::Option<(&'t4 (), schema::Human)>, juniper::executor::FieldError>, &'t5 (), schema::Human, juniper::executor::Executor<'t6, 't7, ()>, &'t8 juniper::executor::Executor<'t9, 't10, ()>, (), &'t11 (), &'t12 (), &'t13 schema::Human, &'t14 schema::Human, impl core::future::future::Future, impl core::future::future::Future, ()}`
= note: required because it appears within the type `[static generator@juniper/src/schema.rs:38:1: 38:44 args:&juniper::types::base::Arguments<'_>, executor:&juniper::executor::Executor<'_, '_, schema::Context> for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5, 't6, 't7, 't8, 't9, 't10, 't11, 't12, 't13, 't14, 't15, 't16, 't17, 't18, 't19, 't20, 't21, 't22, 't23, 't24, 't25, 't26, 't27, 't28> {[static generator@juniper/src/schema.rs:38:1: 38:44 args:&'r juniper::types::base::Arguments<'s> for<'t29, 't30, 't31, 't32, 't33, 't34, 't35, 't36> {std::string::String, awc::Client, &'t29 awc::Client, awc::Client, &'t30 str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't31)>>>>>, &'t32 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't33)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't34)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't35)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't36)>>>>>, ()}], impl core::future::future::Future, impl core::future::future::Future, (), std::result::Result<schema::Human, juniper::executor::FieldError>, std::result::Result<std::option::Option<(&'t4 (), schema::Human)>, juniper::executor::FieldError>, &'t5 (), schema::Human, juniper::executor::Executor<'t6, 't7, ()>, &'t8 juniper::executor::Executor<'t9, 't10, ()>, (), &'t11 (), &'t12 (), &'t13 schema::Human, &'t14 schema::Human, impl core::future::future::Future, impl core::future::future::Future, ()}]`
= note: required because it appears within the type `std::future::GenFuture<[static generator@juniper/src/schema.rs:38:1: 38:44 args:&juniper::types::base::Arguments<'_>, executor:&juniper::executor::Executor<'_, '_, schema::Context> for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5, 't6, 't7, 't8, 't9, 't10, 't11, 't12, 't13, 't14, 't15, 't16, 't17, 't18, 't19, 't20, 't21, 't22, 't23, 't24, 't25, 't26, 't27, 't28> {[static generator@juniper/src/schema.rs:38:1: 38:44 args:&'r juniper::types::base::Arguments<'s> for<'t29, 't30, 't31, 't32, 't33, 't34, 't35, 't36> {std::string::String, awc::Client, &'t29 awc::Client, awc::Client, &'t30 str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't31)>>>>>, &'t32 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't33)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't34)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't35)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't36)>>>>>, ()}], impl core::future::future::Future, impl core::future::future::Future, (), std::result::Result<schema::Human, juniper::executor::FieldError>, std::result::Result<std::option::Option<(&'t4 (), schema::Human)>, juniper::executor::FieldError>, &'t5 (), schema::Human, juniper::executor::Executor<'t6, 't7, ()>, &'t8 juniper::executor::Executor<'t9, 't10, ()>, (), &'t11 (), &'t12 (), &'t13 schema::Human, &'t14 schema::Human, impl core::future::future::Future, impl core::future::future::Future, ()}]>`
= note: required because it appears within the type `impl core::future::future::Future`
= note: required by `futures_util::future::future::FutureExt::boxed`
error[E0277]: `(dyn core::future::future::Future<Output = std::result::Result<awc::response::ClientResponse, actix_http::client::error::SendRequestError>> + 'static)` cannot be sent between threads safely
--> juniper/src/schema.rs:38:1
|
38 | #[juniper::graphql_object(Context=Context)]
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `(dyn core::future::future::Future<Output = std::result::Result<awc::response::ClientResponse, actix_http::client::error::SendRequestError>> + 'static)` cannot be sent between threads safely
|
= help: the trait `std::marker::Send` is not implemented for `(dyn core::future::future::Future<Output = std::result::Result<awc::response::ClientResponse, actix_http::client::error::SendRequestError>> + 'static)`
= note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique<(dyn core::future::future::Future<Output = std::result::Result<awc::response::ClientResponse, actix_http::client::error::SendRequestError>> + 'static)>`
= note: required because it appears within the type `std::boxed::Box<(dyn core::future::future::Future<Output = std::result::Result<awc::response::ClientResponse, actix_http::client::error::SendRequestError>> + 'static)>`
= note: required because it appears within the type `std::pin::Pin<std::boxed::Box<(dyn core::future::future::Future<Output = std::result::Result<awc::response::ClientResponse, actix_http::client::error::SendRequestError>> + 'static)>>`
= note: required because it appears within the type `awc::sender::SendClientRequest`
= note: required because it appears within the type `for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5> {std::string::String, awc::Client, &'r awc::Client, awc::Client, &'s str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't0)>>>>>, &'t1 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't2)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't3)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't4)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't5)>>>>>, ()}`
= note: required because it appears within the type `[static generator@juniper/src/schema.rs:38:1: 38:44 args:&juniper::types::base::Arguments<'_> for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5> {std::string::String, awc::Client, &'r awc::Client, awc::Client, &'s str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't0)>>>>>, &'t1 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't2)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't3)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't4)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't5)>>>>>, ()}]`
= note: required because it appears within the type `for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5, 't6, 't7, 't8, 't9, 't10, 't11, 't12, 't13, 't14, 't15, 't16, 't17, 't18, 't19, 't20, 't21, 't22, 't23, 't24, 't25, 't26, 't27, 't28> {[static generator@juniper/src/schema.rs:38:1: 38:44 args:&'r juniper::types::base::Arguments<'s> for<'t29, 't30, 't31, 't32, 't33, 't34, 't35, 't36> {std::string::String, awc::Client, &'t29 awc::Client, awc::Client, &'t30 str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't31)>>>>>, &'t32 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't33)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't34)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't35)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't36)>>>>>, ()}], impl core::future::future::Future, impl core::future::future::Future, (), std::result::Result<schema::Human, juniper::executor::FieldError>, std::result::Result<std::option::Option<(&'t4 (), schema::Human)>, juniper::executor::FieldError>, &'t5 (), schema::Human, juniper::executor::Executor<'t6, 't7, ()>, &'t8 juniper::executor::Executor<'t9, 't10, ()>, (), &'t11 (), &'t12 (), &'t13 schema::Human, &'t14 schema::Human, impl core::future::future::Future, impl core::future::future::Future, ()}`
= note: required because it appears within the type `[static generator@juniper/src/schema.rs:38:1: 38:44 args:&juniper::types::base::Arguments<'_>, executor:&juniper::executor::Executor<'_, '_, schema::Context> for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5, 't6, 't7, 't8, 't9, 't10, 't11, 't12, 't13, 't14, 't15, 't16, 't17, 't18, 't19, 't20, 't21, 't22, 't23, 't24, 't25, 't26, 't27, 't28> {[static generator@juniper/src/schema.rs:38:1: 38:44 args:&'r juniper::types::base::Arguments<'s> for<'t29, 't30, 't31, 't32, 't33, 't34, 't35, 't36> {std::string::String, awc::Client, &'t29 awc::Client, awc::Client, &'t30 str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't31)>>>>>, &'t32 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't33)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't34)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't35)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't36)>>>>>, ()}], impl core::future::future::Future, impl core::future::future::Future, (), std::result::Result<schema::Human, juniper::executor::FieldError>, std::result::Result<std::option::Option<(&'t4 (), schema::Human)>, juniper::executor::FieldError>, &'t5 (), schema::Human, juniper::executor::Executor<'t6, 't7, ()>, &'t8 juniper::executor::Executor<'t9, 't10, ()>, (), &'t11 (), &'t12 (), &'t13 schema::Human, &'t14 schema::Human, impl core::future::future::Future, impl core::future::future::Future, ()}]`
= note: required because it appears within the type `std::future::GenFuture<[static generator@juniper/src/schema.rs:38:1: 38:44 args:&juniper::types::base::Arguments<'_>, executor:&juniper::executor::Executor<'_, '_, schema::Context> for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5, 't6, 't7, 't8, 't9, 't10, 't11, 't12, 't13, 't14, 't15, 't16, 't17, 't18, 't19, 't20, 't21, 't22, 't23, 't24, 't25, 't26, 't27, 't28> {[static generator@juniper/src/schema.rs:38:1: 38:44 args:&'r juniper::types::base::Arguments<'s> for<'t29, 't30, 't31, 't32, 't33, 't34, 't35, 't36> {std::string::String, awc::Client, &'t29 awc::Client, awc::Client, &'t30 str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't31)>>>>>, &'t32 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't33)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't34)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't35)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't36)>>>>>, ()}], impl core::future::future::Future, impl core::future::future::Future, (), std::result::Result<schema::Human, juniper::executor::FieldError>, std::result::Result<std::option::Option<(&'t4 (), schema::Human)>, juniper::executor::FieldError>, &'t5 (), schema::Human, juniper::executor::Executor<'t6, 't7, ()>, &'t8 juniper::executor::Executor<'t9, 't10, ()>, (), &'t11 (), &'t12 (), &'t13 schema::Human, &'t14 schema::Human, impl core::future::future::Future, impl core::future::future::Future, ()}]>`
= note: required because it appears within the type `impl core::future::future::Future`
= note: required by `futures_util::future::future::FutureExt::boxed`
error[E0277]: `(dyn actix_http::error::ResponseError + 'static)` cannot be sent between threads safely
--> juniper/src/schema.rs:38:1
|
38 | #[juniper::graphql_object(Context=Context)]
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `(dyn actix_http::error::ResponseError + 'static)` cannot be sent between threads safely
|
= help: the trait `std::marker::Send` is not implemented for `(dyn actix_http::error::ResponseError + 'static)`
= note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique<(dyn actix_http::error::ResponseError + 'static)>`
= note: required because it appears within the type `std::boxed::Box<(dyn actix_http::error::ResponseError + 'static)>`
= note: required because it appears within the type `actix_http::error::Error`
= note: required because it appears within the type `actix_http::client::error::SendRequestError`
= note: required because it appears within the type `std::option::Option<actix_http::client::error::SendRequestError>`
= note: required because it appears within the type `awc::sender::SendClientRequest`
= note: required because it appears within the type `for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5> {std::string::String, awc::Client, &'r awc::Client, awc::Client, &'s str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't0)>>>>>, &'t1 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't2)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't3)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't4)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't5)>>>>>, ()}`
= note: required because it appears within the type `[static generator@juniper/src/schema.rs:38:1: 38:44 args:&juniper::types::base::Arguments<'_> for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5> {std::string::String, awc::Client, &'r awc::Client, awc::Client, &'s str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't0)>>>>>, &'t1 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't2)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't3)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't4)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't5)>>>>>, ()}]`
= note: required because it appears within the type `for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5, 't6, 't7, 't8, 't9, 't10, 't11, 't12, 't13, 't14, 't15, 't16, 't17, 't18, 't19, 't20, 't21, 't22, 't23, 't24, 't25, 't26, 't27, 't28> {[static generator@juniper/src/schema.rs:38:1: 38:44 args:&'r juniper::types::base::Arguments<'s> for<'t29, 't30, 't31, 't32, 't33, 't34, 't35, 't36> {std::string::String, awc::Client, &'t29 awc::Client, awc::Client, &'t30 str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't31)>>>>>, &'t32 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't33)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't34)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't35)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't36)>>>>>, ()}], impl core::future::future::Future, impl core::future::future::Future, (), std::result::Result<schema::Human, juniper::executor::FieldError>, std::result::Result<std::option::Option<(&'t4 (), schema::Human)>, juniper::executor::FieldError>, &'t5 (), schema::Human, juniper::executor::Executor<'t6, 't7, ()>, &'t8 juniper::executor::Executor<'t9, 't10, ()>, (), &'t11 (), &'t12 (), &'t13 schema::Human, &'t14 schema::Human, impl core::future::future::Future, impl core::future::future::Future, ()}`
= note: required because it appears within the type `[static generator@juniper/src/schema.rs:38:1: 38:44 args:&juniper::types::base::Arguments<'_>, executor:&juniper::executor::Executor<'_, '_, schema::Context> for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5, 't6, 't7, 't8, 't9, 't10, 't11, 't12, 't13, 't14, 't15, 't16, 't17, 't18, 't19, 't20, 't21, 't22, 't23, 't24, 't25, 't26, 't27, 't28> {[static generator@juniper/src/schema.rs:38:1: 38:44 args:&'r juniper::types::base::Arguments<'s> for<'t29, 't30, 't31, 't32, 't33, 't34, 't35, 't36> {std::string::String, awc::Client, &'t29 awc::Client, awc::Client, &'t30 str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't31)>>>>>, &'t32 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't33)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't34)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't35)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't36)>>>>>, ()}], impl core::future::future::Future, impl core::future::future::Future, (), std::result::Result<schema::Human, juniper::executor::FieldError>, std::result::Result<std::option::Option<(&'t4 (), schema::Human)>, juniper::executor::FieldError>, &'t5 (), schema::Human, juniper::executor::Executor<'t6, 't7, ()>, &'t8 juniper::executor::Executor<'t9, 't10, ()>, (), &'t11 (), &'t12 (), &'t13 schema::Human, &'t14 schema::Human, impl core::future::future::Future, impl core::future::future::Future, ()}]`
= note: required because it appears within the type `std::future::GenFuture<[static generator@juniper/src/schema.rs:38:1: 38:44 args:&juniper::types::base::Arguments<'_>, executor:&juniper::executor::Executor<'_, '_, schema::Context> for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5, 't6, 't7, 't8, 't9, 't10, 't11, 't12, 't13, 't14, 't15, 't16, 't17, 't18, 't19, 't20, 't21, 't22, 't23, 't24, 't25, 't26, 't27, 't28> {[static generator@juniper/src/schema.rs:38:1: 38:44 args:&'r juniper::types::base::Arguments<'s> for<'t29, 't30, 't31, 't32, 't33, 't34, 't35, 't36> {std::string::String, awc::Client, &'t29 awc::Client, awc::Client, &'t30 str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't31)>>>>>, &'t32 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't33)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't34)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't35)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't36)>>>>>, ()}], impl core::future::future::Future, impl core::future::future::Future, (), std::result::Result<schema::Human, juniper::executor::FieldError>, std::result::Result<std::option::Option<(&'t4 (), schema::Human)>, juniper::executor::FieldError>, &'t5 (), schema::Human, juniper::executor::Executor<'t6, 't7, ()>, &'t8 juniper::executor::Executor<'t9, 't10, ()>, (), &'t11 (), &'t12 (), &'t13 schema::Human, &'t14 schema::Human, impl core::future::future::Future, impl core::future::future::Future, ()}]>`
= note: required because it appears within the type `impl core::future::future::Future`
= note: required by `futures_util::future::future::FutureExt::boxed`
error[E0277]: `dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>>` cannot be sent between threads safely
--> juniper/src/schema.rs:38:1
|
38 | #[juniper::graphql_object(Context=Context)]
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>>` cannot be sent between threads safely
|
= help: the trait `std::marker::Send` is not implemented for `dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>>`
= note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique<dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>>>`
= note: required because it appears within the type `std::boxed::Box<dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>>>`
= note: required because it appears within the type `std::pin::Pin<std::boxed::Box<dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>>>>`
= note: required because it appears within the type `actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>>>>>`
= note: required because it appears within the type `actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>>>>>>`
= note: required because it appears within the type `actix_http::payload::Payload<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>>>>>>>`
= note: required because it appears within the type `awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>>>>>>>`
= note: required because it appears within the type `for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5> {std::string::String, awc::Client, &'r awc::Client, awc::Client, &'s str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't0)>>>>>, &'t1 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't2)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't3)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't4)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't5)>>>>>, ()}`
= note: required because it appears within the type `[static generator@juniper/src/schema.rs:38:1: 38:44 args:&juniper::types::base::Arguments<'_> for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5> {std::string::String, awc::Client, &'r awc::Client, awc::Client, &'s str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't0)>>>>>, &'t1 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't2)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't3)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't4)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't5)>>>>>, ()}]`
= note: required because it appears within the type `for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5, 't6, 't7, 't8, 't9, 't10, 't11, 't12, 't13, 't14, 't15, 't16, 't17, 't18, 't19, 't20, 't21, 't22, 't23, 't24, 't25, 't26, 't27, 't28> {[static generator@juniper/src/schema.rs:38:1: 38:44 args:&'r juniper::types::base::Arguments<'s> for<'t29, 't30, 't31, 't32, 't33, 't34, 't35, 't36> {std::string::String, awc::Client, &'t29 awc::Client, awc::Client, &'t30 str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't31)>>>>>, &'t32 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't33)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't34)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't35)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't36)>>>>>, ()}], impl core::future::future::Future, impl core::future::future::Future, (), std::result::Result<schema::Human, juniper::executor::FieldError>, std::result::Result<std::option::Option<(&'t4 (), schema::Human)>, juniper::executor::FieldError>, &'t5 (), schema::Human, juniper::executor::Executor<'t6, 't7, ()>, &'t8 juniper::executor::Executor<'t9, 't10, ()>, (), &'t11 (), &'t12 (), &'t13 schema::Human, &'t14 schema::Human, impl core::future::future::Future, impl core::future::future::Future, ()}`
= note: required because it appears within the type `[static generator@juniper/src/schema.rs:38:1: 38:44 args:&juniper::types::base::Arguments<'_>, executor:&juniper::executor::Executor<'_, '_, schema::Context> for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5, 't6, 't7, 't8, 't9, 't10, 't11, 't12, 't13, 't14, 't15, 't16, 't17, 't18, 't19, 't20, 't21, 't22, 't23, 't24, 't25, 't26, 't27, 't28> {[static generator@juniper/src/schema.rs:38:1: 38:44 args:&'r juniper::types::base::Arguments<'s> for<'t29, 't30, 't31, 't32, 't33, 't34, 't35, 't36> {std::string::String, awc::Client, &'t29 awc::Client, awc::Client, &'t30 str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't31)>>>>>, &'t32 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't33)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't34)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't35)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't36)>>>>>, ()}], impl core::future::future::Future, impl core::future::future::Future, (), std::result::Result<schema::Human, juniper::executor::FieldError>, std::result::Result<std::option::Option<(&'t4 (), schema::Human)>, juniper::executor::FieldError>, &'t5 (), schema::Human, juniper::executor::Executor<'t6, 't7, ()>, &'t8 juniper::executor::Executor<'t9, 't10, ()>, (), &'t11 (), &'t12 (), &'t13 schema::Human, &'t14 schema::Human, impl core::future::future::Future, impl core::future::future::Future, ()}]`
= note: required because it appears within the type `std::future::GenFuture<[static generator@juniper/src/schema.rs:38:1: 38:44 args:&juniper::types::base::Arguments<'_>, executor:&juniper::executor::Executor<'_, '_, schema::Context> for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5, 't6, 't7, 't8, 't9, 't10, 't11, 't12, 't13, 't14, 't15, 't16, 't17, 't18, 't19, 't20, 't21, 't22, 't23, 't24, 't25, 't26, 't27, 't28> {[static generator@juniper/src/schema.rs:38:1: 38:44 args:&'r juniper::types::base::Arguments<'s> for<'t29, 't30, 't31, 't32, 't33, 't34, 't35, 't36> {std::string::String, awc::Client, &'t29 awc::Client, awc::Client, &'t30 str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't31)>>>>>, &'t32 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't33)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't34)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't35)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't36)>>>>>, ()}], impl core::future::future::Future, impl core::future::future::Future, (), std::result::Result<schema::Human, juniper::executor::FieldError>, std::result::Result<std::option::Option<(&'t4 (), schema::Human)>, juniper::executor::FieldError>, &'t5 (), schema::Human, juniper::executor::Executor<'t6, 't7, ()>, &'t8 juniper::executor::Executor<'t9, 't10, ()>, (), &'t11 (), &'t12 (), &'t13 schema::Human, &'t14 schema::Human, impl core::future::future::Future, impl core::future::future::Future, ()}]>`
= note: required because it appears within the type `impl core::future::future::Future`
= note: required by `futures_util::future::future::FutureExt::boxed`
error[E0277]: `(dyn std::any::Any + 'static)` cannot be sent between threads safely
--> juniper/src/schema.rs:38:1
|
38 | #[juniper::graphql_object(Context=Context)]
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `(dyn std::any::Any + 'static)` cannot be sent between threads safely
|
= help: the trait `std::marker::Send` is not implemented for `(dyn std::any::Any + 'static)`
= note: required because of the requirements on the impl of `std::marker::Send` for `std::ptr::Unique<(dyn std::any::Any + 'static)>`
= note: required because it appears within the type `std::boxed::Box<(dyn std::any::Any + 'static)>`
= note: required because it appears within the type `(std::any::TypeId, std::boxed::Box<(dyn std::any::Any + 'static)>)`
= note: required because of the requirements on the impl of `std::marker::Send` for `hashbrown::raw::RawTable<(std::any::TypeId, std::boxed::Box<(dyn std::any::Any + 'static)>)>`
= note: required because it appears within the type `hashbrown::map::HashMap<std::any::TypeId, std::boxed::Box<(dyn std::any::Any + 'static)>, std::hash::BuildHasherDefault<fxhash::FxHasher>>`
= note: required because it appears within the type `std::collections::HashMap<std::any::TypeId, std::boxed::Box<(dyn std::any::Any + 'static)>, std::hash::BuildHasherDefault<fxhash::FxHasher>>`
= note: required because it appears within the type `actix_http::extensions::Extensions`
= note: required because of the requirements on the impl of `std::marker::Send` for `std::cell::RefCell<actix_http::extensions::Extensions>`
= note: required because it appears within the type `actix_http::message::RequestHead`
= note: required because it appears within the type `awc::request::ClientRequest`
= note: required because it appears within the type `for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5> {std::string::String, awc::Client, &'r awc::Client, awc::Client, &'s str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't0)>>>>>, &'t1 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't2)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't3)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't4)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't5)>>>>>, ()}`
= note: required because it appears within the type `[static generator@juniper/src/schema.rs:38:1: 38:44 args:&juniper::types::base::Arguments<'_> for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5> {std::string::String, awc::Client, &'r awc::Client, awc::Client, &'s str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't0)>>>>>, &'t1 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't2)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't3)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't4)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't5)>>>>>, ()}]`
= note: required because it appears within the type `for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5, 't6, 't7, 't8, 't9, 't10, 't11, 't12, 't13, 't14, 't15, 't16, 't17, 't18, 't19, 't20, 't21, 't22, 't23, 't24, 't25, 't26, 't27, 't28> {[static generator@juniper/src/schema.rs:38:1: 38:44 args:&'r juniper::types::base::Arguments<'s> for<'t29, 't30, 't31, 't32, 't33, 't34, 't35, 't36> {std::string::String, awc::Client, &'t29 awc::Client, awc::Client, &'t30 str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't31)>>>>>, &'t32 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't33)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't34)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't35)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't36)>>>>>, ()}], impl core::future::future::Future, impl core::future::future::Future, (), std::result::Result<schema::Human, juniper::executor::FieldError>, std::result::Result<std::option::Option<(&'t4 (), schema::Human)>, juniper::executor::FieldError>, &'t5 (), schema::Human, juniper::executor::Executor<'t6, 't7, ()>, &'t8 juniper::executor::Executor<'t9, 't10, ()>, (), &'t11 (), &'t12 (), &'t13 schema::Human, &'t14 schema::Human, impl core::future::future::Future, impl core::future::future::Future, ()}`
= note: required because it appears within the type `[static generator@juniper/src/schema.rs:38:1: 38:44 args:&juniper::types::base::Arguments<'_>, executor:&juniper::executor::Executor<'_, '_, schema::Context> for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5, 't6, 't7, 't8, 't9, 't10, 't11, 't12, 't13, 't14, 't15, 't16, 't17, 't18, 't19, 't20, 't21, 't22, 't23, 't24, 't25, 't26, 't27, 't28> {[static generator@juniper/src/schema.rs:38:1: 38:44 args:&'r juniper::types::base::Arguments<'s> for<'t29, 't30, 't31, 't32, 't33, 't34, 't35, 't36> {std::string::String, awc::Client, &'t29 awc::Client, awc::Client, &'t30 str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't31)>>>>>, &'t32 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't33)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't34)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't35)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't36)>>>>>, ()}], impl core::future::future::Future, impl core::future::future::Future, (), std::result::Result<schema::Human, juniper::executor::FieldError>, std::result::Result<std::option::Option<(&'t4 (), schema::Human)>, juniper::executor::FieldError>, &'t5 (), schema::Human, juniper::executor::Executor<'t6, 't7, ()>, &'t8 juniper::executor::Executor<'t9, 't10, ()>, (), &'t11 (), &'t12 (), &'t13 schema::Human, &'t14 schema::Human, impl core::future::future::Future, impl core::future::future::Future, ()}]`
= note: required because it appears within the type `std::future::GenFuture<[static generator@juniper/src/schema.rs:38:1: 38:44 args:&juniper::types::base::Arguments<'_>, executor:&juniper::executor::Executor<'_, '_, schema::Context> for<'r, 's, 't0, 't1, 't2, 't3, 't4, 't5, 't6, 't7, 't8, 't9, 't10, 't11, 't12, 't13, 't14, 't15, 't16, 't17, 't18, 't19, 't20, 't21, 't22, 't23, 't24, 't25, 't26, 't27, 't28> {[static generator@juniper/src/schema.rs:38:1: 38:44 args:&'r juniper::types::base::Arguments<'s> for<'t29, 't30, 't31, 't32, 't33, 't34, 't35, 't36> {std::string::String, awc::Client, &'t29 awc::Client, awc::Client, &'t30 str, awc::request::ClientRequest, awc::sender::SendClientRequest, awc::sender::SendClientRequest, (), awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't31)>>>>>, &'t32 mut awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't33)>>>>>, awc::response::ClientResponse<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't34)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't35)>>>>>, awc::response::MessageBody<actix_http::encoding::decoder::Decoder<actix_http::payload::Payload<std::pin::Pin<std::boxed::Box<(dyn futures_core::stream::Stream<Item = std::result::Result<bytes::bytes::Bytes, actix_http::error::PayloadError>> + 't36)>>>>>, ()}], impl core::future::future::Future, impl core::future::future::Future, (), std::result::Result<schema::Human, juniper::executor::FieldError>, std::result::Result<std::option::Option<(&'t4 (), schema::Human)>, juniper::executor::FieldError>, &'t5 (), schema::Human, juniper::executor::Executor<'t6, 't7, ()>, &'t8 juniper::executor::Executor<'t9, 't10, ()>, (), &'t11 (), &'t12 (), &'t13 schema::Human, &'t14 schema::Human, impl core::future::future::Future, impl core::future::future::Future, ()}]>`
= note: required because it appears within the type `impl core::future::future::Future`
= note: required by `futures_util::future::future::FutureExt::boxed`
error: aborting due to 7 previous errors
For more information about this error, try `rustc --explain E0277`.
error: could not compile `juniper-example`.
To learn more, run the command again with --verbose.
So, any ideas on that? I could try to use archer simply change Rc to Arc if we're ok with that to make it work.
Considering HTTP overhead overall I think there is no much problem in atomic increment overhead. It won't be significant comparing to network issues.
Most helpful comment
So, any ideas on that? I could try to use
archersimply changeRctoArcif we're ok with that to make it work.Considering HTTP overhead overall I think there is no much problem in atomic increment overhead. It won't be significant comparing to network issues.