Skip to content

Instantly share code, notes, and snippets.

@jsgf
Last active September 14, 2017 03:14
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save jsgf/c0c1474012c496e41f4c3ebb5a14f89e to your computer and use it in GitHub Desktop.
Save jsgf/c0c1474012c496e41f4c3ebb5a14f89e to your computer and use it in GitHub Desktop.
[WARNING][Buck][9/13/2017, 4:46:35 PM] error[E0284]: type annotations required: cannot resolve `the closure `copy_changeset::{{closure}}` implements the trait `FnOnce``
--> scm/mononoke/cmds/blobimport.rs:331:29
|
331 | .map(|copy| cpupool.spawn(copy))
| ^^^^^
|
= note: required because of the requirements on the impl of `futures::Future` for `futures::AndThen<futures::future::FromErr<std::boxed::Box<futures::Future<Error=mercurial::Error, Item=mercurial::changeset::RevlogChangeset> + std::marker::Send + 'static>, Error>, futures::MapErr<std::boxed::Box<futures::Future<Error=blobrepo::Error, Item=()> + std::marker::Send + 'static>, fn(blobrepo::Error) -> Error {<blobrepo::Error as std::convert::Into<Error>>::into}>, [closure@scm/mononoke/cmds/blobimport.rs:239:23: 243:14 csid:mercurial_types::NodeHash, blobstore:std::sync::Arc<blobstore::Blobstore<GetBlob=std::boxed::Box<futures::Future<Error=Error, Item=std::option::Option<std::vec::Vec<u8>>> + std::marker::Send + 'static>, ValueOut=std::vec::Vec<u8>, Key=std::string::String, Error=Error, ValueIn=bytes::Bytes, PutBlob=std::boxed::Box<futures::Future<Error=Error, Item=()> + std::marker::Send + 'static>> + std::marker::Sync + 'static>]>`
= note: required because it appears within the type `futures::future::join::MaybeDone<futures::AndThen<futures::future::FromErr<std::boxed::Box<futures::Future<Error=mercurial::Error, Item=mercurial::changeset::RevlogChangeset> + std::marker::Send + 'static>, Error>, futures::MapErr<std::boxed::Box<futures::Future<Error=blobrepo::Error, Item=()> + std::marker::Send + 'static>, fn(blobrepo::Error) -> Error {<blobrepo::Error as std::convert::Into<Error>>::into}>, [closure@scm/mononoke/cmds/blobimport.rs:239:23: 243:14 csid:mercurial_types::NodeHash, blobstore:std::sync::Arc<blobstore::Blobstore<GetBlob=std::boxed::Box<futures::Future<Error=Error, Item=std::option::Option<std::vec::Vec<u8>>> + std::marker::Send + 'static>, ValueOut=std::vec::Vec<u8>, Key=std::string::String, Error=Error, ValueIn=bytes::Bytes, PutBlob=std::boxed::Box<futures::Future<Error=Error, Item=()> + std::marker::Send + 'static>> + std::marker::Sync + 'static>]>>`
= note: required because it appears within the type `futures::Join<futures::AndThen<futures::future::FromErr<std::boxed::Box<futures::Future<Error=mercurial::Error, Item=mercurial::changeset::RevlogChangeset> + std::marker::Send + 'static>, Error>, futures::MapErr<std::boxed::Box<futures::Future<Error=blobrepo::Error, Item=()> + std::marker::Send + 'static>, fn(blobrepo::Error) -> Error {<blobrepo::Error as std::convert::Into<Error>>::into}>, [closure@scm/mononoke/cmds/blobimport.rs:239:23: 243:14 csid:mercurial_types::NodeHash, blobstore:std::sync::Arc<blobstore::Blobstore<GetBlob=std::boxed::Box<futures::Future<Error=Error, Item=std::option::Option<std::vec::Vec<u8>>> + std::marker::Send + 'static>, ValueOut=std::vec::Vec<u8>, Key=std::string::String, Error=Error, ValueIn=bytes::Bytes, PutBlob=std::boxed::Box<futures::Future<Error=Error, Item=()> + std::marker::Send + 'static>> + std::marker::Sync + 'static>]>, futures::MapErr<futures::AndThen<futures::future::FromErr<futures::Join<std::boxed::Box<futures::Future<Error=mercurial::Error, Item=mercurial::changeset::RevlogChangeset> + std::marker::Send + 'static>, futures::FutureResult<mercurial::revlog::Entry, mercurial::Error>>, Error>, futures::AndThen<futures::future::FromErr<futures::FutureResult<mercurial_types::BlobNode, mercurial::Error>, Error>, futures::Join<impl futures::Future, futures::Flatten<futures::FutureResult<futures::stream::ForEach<futures::stream::Flatten<futures::stream::Map<futures::stream::MapErr<std::boxed::Box<futures::Stream<Item=std::boxed::Box<mercurial_types::Entry<Error=mercurial::Error> + std::marker::Sync + 'static>, Error=mercurial::Error> + std::marker::Send + 'static>, fn(mercurial::Error) -> Error {<Error as std::convert::From<mercurial::Error>>::from}>, [closure@scm/mononoke/cmds/blobimport.rs:277:41: 283:42 revlog_repo:mercurial::RevlogRepo, linkrev:mercurial::revlog::RevIdx]>>, [closure@scm/mononoke/cmds/blobimport.rs:287:41: 287:99 blobstore:std::sync::Arc<blobstore::Blobstore<GetBlob=std::boxed::Box<futures::Future<Error=Error, Item=std::option::Option<std::vec::Vec<u8>>> + std::marker::Send + 'static>, ValueOut=std::vec::Vec<u8>, Key=std::string::String, Error=Error, ValueIn=bytes::Bytes, PutBlob=std::boxed::Box<futures::Future<Error=Error, Item=()> + std::marker::Send + 'static>> + std::marker::Sync + 'static>], impl futures::Future>, Error>>>, [closure@scm/mononoke/cmds/blobimport.rs:259:31: 294:22 blobstore:std::sync::Arc<blobstore::Blobstore<GetBlob=std::boxed::Box<futures::Future<Error=Error, Item=std::option::Option<std::vec::Vec<u8>>> + std::marker::Send + 'static>, ValueOut=std::vec::Vec<u8>, Key=std::string::String, Error=Error, ValueIn=bytes::Bytes, PutBlob=std::boxed::Box<futures::Future<Error=Error, Item=()> + std::marker::Send + 'static>> + std::marker::Sync + 'static>, mfid:mercurial_types::NodeHash, revlog_repo:mercurial::RevlogRepo, linkrev:mercurial::revlog::RevIdx]>, [closure@scm/mononoke/cmds/blobimport.rs:251:23: 295:14 revlog_repo:mercurial::RevlogRepo, blobstore:std::sync::Arc<blobstore::Blobstore<GetBlob=std::boxed::Box<futures::Future<Error=Error, Item=std::option::Option<std::vec::Vec<u8>>> + std::marker::Send + 'static>, ValueOut=std::vec::Vec<u8>, Key=std::string::String, Error=Error, ValueIn=bytes::Bytes, PutBlob=std::boxed::Box<futures::Future<Error=Error, Item=()> + std::marker::Send + 'static>> + std::marker::Sync + 'static>]>, [closure@scm/mononoke/cmds/blobimport.rs:296:22: 298:14 csid:mercurial_types::NodeHash]>>`
= note: required because it appears within the type `futures::Map<futures::Join<futures::AndThen<futures::future::FromErr<std::boxed::Box<futures::Future<Error=mercurial::Error, Item=mercurial::changeset::RevlogChangeset> + std::marker::Send + 'static>, Error>, futures::MapErr<std::boxed::Box<futures::Future<Error=blobrepo::Error, Item=()> + std::marker::Send + 'static>, fn(blobrepo::Error) -> Error {<blobrepo::Error as std::convert::Into<Error>>::into}>, [closure@scm/mononoke/cmds/blobimport.rs:239:23: 243:14 csid:mercurial_types::NodeHash, blobstore:std::sync::Arc<blobstore::Blobstore<GetBlob=std::boxed::Box<futures::Future<Error=Error, Item=std::option::Option<std::vec::Vec<u8>>> + std::marker::Send + 'static>, ValueOut=std::vec::Vec<u8>, Key=std::string::String, Error=Error, ValueIn=bytes::Bytes, PutBlob=std::boxed::Box<futures::Future<Error=Error, Item=()> + std::marker::Send + 'static>> + std::marker::Sync + 'static>]>, futures::MapErr<futures::AndThen<futures::future::FromErr<futures::Join<std::boxed::Box<futures::Future<Error=mercurial::Error, Item=mercurial::changeset::RevlogChangeset> + std::marker::Send + 'static>, futures::FutureResult<mercurial::revlog::Entry, mercurial::Error>>, Error>, futures::AndThen<futures::future::FromErr<futures::FutureResult<mercurial_types::BlobNode, mercurial::Error>, Error>, futures::Join<impl futures::Future, futures::Flatten<futures::FutureResult<futures::stream::ForEach<futures::stream::Flatten<futures::stream::Map<futures::stream::MapErr<std::boxed::Box<futures::Stream<Item=std::boxed::Box<mercurial_types::Entry<Error=mercurial::Error> + std::marker::Sync + 'static>, Error=mercurial::Error> + std::marker::Send + 'static>, fn(mercurial::Error) -> Error {<Error as std::convert::From<mercurial::Error>>::from}>, [closure@scm/mononoke/cmds/blobimport.rs:277:41: 283:42 revlog_repo:mercurial::RevlogRepo, linkrev:mercurial::revlog::RevIdx]>>, [closure@scm/mononoke/cmds/blobimport.rs:287:41: 287:99 blobstore:std::sync::Arc<blobstore::Blobstore<GetBlob=std::boxed::Box<futures::Future<Error=Error, Item=std::option::Option<std::vec::Vec<u8>>> + std::marker::Send + 'static>, ValueOut=std::vec::Vec<u8>, Key=std::string::String, Error=Error, ValueIn=bytes::Bytes, PutBlob=std::boxed::Box<futures::Future<Error=Error, Item=()> + std::marker::Send + 'static>> + std::marker::Sync + 'static>], impl futures::Future>, Error>>>, [closure@scm/mononoke/cmds/blobimport.rs:259:31: 294:22 blobstore:std::sync::Arc<blobstore::Blobstore<GetBlob=std::boxed::Box<futures::Future<Error=Error, Item=std::option::Option<std::vec::Vec<u8>>> + std::marker::Send + 'static>, ValueOut=std::vec::Vec<u8>, Key=std::string::String, Error=Error, ValueIn=bytes::Bytes, PutBlob=std::boxed::Box<futures::Future<Error=Error, Item=()> + std::marker::Send + 'static>> + std::marker::Sync + 'static>, mfid:mercurial_types::NodeHash, revlog_repo:mercurial::RevlogRepo, linkrev:mercurial::revlog::RevIdx]>, [closure@scm/mononoke/cmds/blobimport.rs:251:23: 295:14 revlog_repo:mercurial::RevlogRepo, blobstore:std::sync::Arc<blobstore::Blobstore<GetBlob=std::boxed::Box<futures::Future<Error=Error, Item=std::option::Option<std::vec::Vec<u8>>> + std::marker::Send + 'static>, ValueOut=std::vec::Vec<u8>, Key=std::string::String, Error=Error, ValueIn=bytes::Bytes, PutBlob=std::boxed::Box<futures::Future<Error=Error, Item=()> + std::marker::Send + 'static>> + std::marker::Sync + 'static>]>, [closure@scm/mononoke/cmds/blobimport.rs:296:22: 298:14 csid:mercurial_types::NodeHash]>>, [closure@scm/mononoke/cmds/blobimport.rs:301:28: 301:34]>`
= note: required because it appears within the type `impl futures::Future`
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment