actix: `trust-dns-proto` fails to compile

After updating actix from v0.7.5 to v0.7.6 I’m seeing the following failures on TravisCI:

Downloading trust-dns-resolver v0.10.0
   Compiling trust-dns-proto v0.5.0
error[E0432]: unresolved import `tokio_timer::Timeout`
  --> /home/travis/.cargo/registry/src/github.com-1ecc6299db9ec823/trust-dns-proto-0.5.0/src/tcp/tcp_stream.rs:20:5
   |
20 | use tokio_timer::Timeout;
   |     ^^^^^^^^^^^^^^^^^^^^ no `Timeout` in the root
error[E0599]: no method named `context` found for type `tokio_executor::SpawnError` in the current scope
   --> /home/travis/.cargo/registry/src/github.com-1ecc6299db9ec823/trust-dns-proto-0.5.0/src/error.rs:293:11
    |
293 |         e.context(ProtoErrorKind::SpawnError).into()
    |           ^^^^^^^
    |
    = note: the method `context` exists but the following trait bounds were not satisfied:
            `tokio_executor::SpawnError : failure::Fail`
            `&tokio_executor::SpawnError : failure::Fail`
            `&mut tokio_executor::SpawnError : failure::Fail`
error[E0277]: the trait bound `futures::Future<Item=tcp::tcp_stream::TcpStream<tokio_tcp::TcpStream>, Error=std::io::Error> + std::marker::Send: std::marker::Sized` is not satisfied
   --> /home/travis/.cargo/registry/src/github.com-1ecc6299db9ec823/trust-dns-proto-0.5.0/src/tcp/tcp_stream.rs:145:10
    |
145 |         (Box::new(stream), message_sender)
    |          ^^^^^^^^ `futures::Future<Item=tcp::tcp_stream::TcpStream<tokio_tcp::TcpStream>, Error=std::io::Error> + std::marker::Send` does not have a constant size known at compile-time
    |
    = help: the trait `std::marker::Sized` is not implemented for `futures::Future<Item=tcp::tcp_stream::TcpStream<tokio_tcp::TcpStream>, Error=std::io::Error> + std::marker::Send`
    = note: required by `<std::boxed::Box<T>>::new`

It seems a little unfortunate that such a problematic dependency was added in just a patch update. Are there any known workarounds for this problem?

About this issue

  • Original URL
  • State: closed
  • Created 6 years ago
  • Comments: 15 (12 by maintainers)

Most upvoted comments

To follow up, I got past the issue by compiling without the "resolver" feature.