Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Build failure with v0.14.3 #2421

Closed
clehner opened this issue Feb 5, 2021 · 7 comments · Fixed by #2422
Closed

Build failure with v0.14.3 #2421

clehner opened this issue Feb 5, 2021 · 7 comments · Fixed by #2422

Comments

@clehner
Copy link

clehner commented Feb 5, 2021

Hi,

I get some build errors in CI with the newly released hyper v0.14.3:

In https://github.com/spruceid/didkit/runs/1842461977#step:6:437

error[E0433]: failed to resolve: could not find `h2` in `proto`
  --> /home/runner/.cargo/registry/src/github.com-1ecc6299db9ec823/hyper-0.14.3/src/client/conn.rs:92:24
   |
92 |             h2: proto::h2::ClientTask<B>, _phantom: PhantomData<fn(T)>,
   |                        ^^ could not find `h2` in `proto`

error[E0433]: failed to resolve: could not find `h2` in `proto`
   --> /home/runner/.cargo/registry/src/github.com-1ecc6299db9ec823/hyper-0.14.3/src/server/conn.rs:187:24
    |
187 |             h2: proto::h2::Server<Rewind<T>, S, B, E>,
    |                        ^^ could not find `h2` in `proto`

error[E0412]: cannot find type `PhantomData` in this scope
  --> /home/runner/.cargo/registry/src/github.com-1ecc6299db9ec823/hyper-0.14.3/src/client/conn.rs:92:53
   |
92 |             h2: proto::h2::ClientTask<B>, _phantom: PhantomData<fn(T)>,
   |                                                     ^^^^^^^^^^^ not found in this scope
   |
help: consider importing one of these items
   |
49 | use core::marker::PhantomData;
   |
49 | use crate::client::service::PhantomData;
   |
49 | use pin_project_lite::__private::PhantomData;
   |
49 | use std::marker::PhantomData;
   |

error[E0412]: cannot find type `Rewind` in this scope
   --> /home/runner/.cargo/registry/src/github.com-1ecc6299db9ec823/hyper-0.14.3/src/server/conn.rs:187:35
    |
187 |             h2: proto::h2::Server<Rewind<T>, S, B, E>,
    |                                   ^^^^^^ not found in this scope
    |
help: consider importing this struct
    |
46  | use crate::common::io::Rewind;
    |

error[E0599]: no variant named `H2` found for enum `server::conn::ProtoServer<T, B, S, E>`
   --> /home/runner/.cargo/registry/src/github.com-1ecc6299db9ec823/hyper-0.14.3/src/server/conn.rs:185:9
    |
166 | / pin_project! {
167 | |     #[project = ProtoServerProj]
168 | |     pub(super) enum ProtoServer<T, B, S, E = Exec>
169 | |     where
...   |
185 | |         H2 {
    | |         ^^ help: there is a variant with a similar name: `H1`
...   |
189 | |     }
190 | | }
    | |_- variant `H2` not found here

error[E0599]: no variant named `H2` found for enum `ProtoClient<T, B>`
  --> /home/runner/.cargo/registry/src/github.com-1ecc6299db9ec823/hyper-0.14.3/src/client/conn.rs:90:9
   |
78 | / pin_project! {
79 | |     #[project = ProtoClientProj]
80 | |     enum ProtoClient<T, B>
81 | |     where
...  |
90 | |         H2 {
   | |         ^^ help: there is a variant with a similar name: `H1`
...  |
94 | |     }
95 | | }
   | |_- variant `H2` not found here

error[E0063]: missing field `fallback` in initializer of `server::conn::Connection<_, _, _>`
   --> /home/runner/.cargo/registry/src/github.com-1ecc6299db9ec823/hyper-0.14.3/src/server/conn.rs:556:9
    |
556 |         Connection {
    |         ^^^^^^^^^^ missing `fallback`

error: aborting due to 7 previous errors

Some errors have detailed explanations: E0063, E0412, E0433, E0599.
For more information about an error, try `rustc --explain E0063`.
error: could not compile `hyper`

Is there a feature needed? I have not yet been able to reproduce the issue locally, just saw it in CI.

@seanmonstar
Copy link
Member

This is interesting. Did it work fine for v0.14.2? What features do you have enabled?

@clehner
Copy link
Author

clehner commented Feb 5, 2021

@seanmonstar
Yes, it completed with v0.14.2, in this run: https://github.com/spruceid/didkit/runs/1842355682#step:6:434

Features are: ["server", "client", "http1", "stream"]

Edit: I can reproduce the errors locally using these features. Seems to work after adding http2.

@seanmonstar
Copy link
Member

Huh, I see it here too. Seems our CI feature checking doesn't check all the combinations. Enabling http2 will fix you immediately, we'll need to get this fixed I suppose. Yay...

@clehner
Copy link
Author

clehner commented Feb 5, 2021

Ok, thanks @seanmonstar

@seanmonstar
Copy link
Member

I'm reverting the relevant change in #2422, and will have a new release out shortly. Sorry for the turbulence.

@seanmonstar
Copy link
Member

v0.14.4 is published which works when http2 isn't enabled.

@clehner
Copy link
Author

clehner commented Feb 6, 2021

Works, thanks!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants