^^^^^^^^^^^^^^^^^
error[E0277]: the trait bound tokio::net::TcpStream: tokio::io::async_read::AsyncRead is not satisfied
--> src/tunnel/ws.rs:76:59
76
let ws_stream = match tokio_tungstenite::accept_async(inbound).await {
------------------------------- ^^^^^^^ the trait tokio::io::async_read::AsyncRead is not implemented for tokio::net::TcpStream
required by a bound introduced by this call
note: required by a bound in accept_async
--> /tmp/codon/tmp/cache/cargo/registry/src/github.com-1ecc6299db9ec823/tokio-tungstenite-0.16.1/src/lib.rs:123:8
123
S: AsyncRead + AsyncWrite + Unpin,
^^^^^^^^^ required by this bound in accept_async
error[E0277]: the trait bound tokio::net::TcpStream: tokio::io::async_write::AsyncWrite is not satisfied
--> src/tunnel/ws.rs:76:59
76
let ws_stream = match tokio_tungstenite::accept_async(inbound).await {
------------------------------- ^^^^^^^ the trait tokio::io::async_write::AsyncWrite is not implemented for tokio::net::TcpStream
required by a bound introduced by this call
note: required by a bound in accept_async
--> /tmp/codon/tmp/cache/cargo/registry/src/github.com-1ecc6299db9ec823/tokio-tungstenite-0.16.1/src/lib.rs:123:20
123
S: AsyncRead + AsyncWrite + Unpin,
^^^^^^^^^^ required by this bound in accept_async
error[E0599]: the method split exists for struct WebSocketStream<tokio::net::TcpStream>, but its trait bounds were not satisfied
--> src/tunnel/ws.rs:82:35
82
let (write, read) = ws_stream.split();
^^^^^ method cannot be called on WebSocketStream<tokio::net::TcpStream> due to unsatisfied trait bounds
= note: the following trait bounds were not satisfied:
`WebSocketStream<tokio::net::TcpStream>: futures::Stream`
which is required by `WebSocketStream<tokio::net::TcpStream>: futures::StreamExt`
`&WebSocketStream<tokio::net::TcpStream>: futures::Stream`
which is required by `&WebSocketStream<tokio::net::TcpStream>: futures::StreamExt`
`&mut WebSocketStream<tokio::net::TcpStream>: futures::Stream`
which is required by `&mut WebSocketStream<tokio::net::TcpStream>: futures::StreamExt`
error[E0277]: the trait bound tokio::net::TcpStream: tokio::io::async_read::AsyncRead is not satisfied
--> src/channel/rmux.rs:161:65
161
let ws = match tokio_tungstenite::client_async(url, conn).await {
------------------------------- ^^^^ the trait tokio::io::async_read::AsyncRead is not implemented for tokio::net::TcpStream
required by a bound introduced by this call
note: required by a bound in client_async
--> /tmp/codon/tmp/cache/cargo/registry/src/github.com-1ecc6299db9ec823/tokio-tungstenite-0.16.1/src/lib.rs:83:8
83
S: AsyncRead + AsyncWrite + Unpin,
^^^^^^^^^ required by this bound in client_async
error[E0277]: the trait bound tokio::net::TcpStream: tokio::io::async_write::AsyncWrite is not satisfied
--> src/channel/rmux.rs:161:65
161
let ws = match tokio_tungstenite::client_async(url, conn).await {
------------------------------- ^^^^ the trait tokio::io::async_write::AsyncWrite is not implemented for tokio::net::TcpStream
required by a bound introduced by this call
note: required by a bound in client_async
--> /tmp/codon/tmp/cache/cargo/registry/src/github.com-1ecc6299db9ec823/tokio-tungstenite-0.16.1/src/lib.rs:83:20
83
S: AsyncRead + AsyncWrite + Unpin,
^^^^^^^^^^ required by this bound in client_async
error[E0599]: the method split exists for struct WebSocketStream<tokio::net::TcpStream>, but its trait bounds were not satisfied
--> src/channel/rmux.rs:165:36
165
let (write, read) = ws.split();
^^^^^ method cannot be called on WebSocketStream<tokio::net::TcpStream> due to unsatisfied trait bounds
= note: the following trait bounds were not satisfied:
`WebSocketStream<tokio::net::TcpStream>: futures::Stream`
which is required by `WebSocketStream<tokio::net::TcpStream>: futures::StreamExt`
`&WebSocketStream<tokio::net::TcpStream>: futures::Stream`
which is required by `&WebSocketStream<tokio::net::TcpStream>: futures::StreamExt`
`&mut WebSocketStream<tokio::net::TcpStream>: futures::Stream`
which is required by `&mut WebSocketStream<tokio::net::TcpStream>: futures::StreamExt`
error[E0277]: the trait bound AsyncTokioIO<async_tls::client::TlsStream<AsyncTcpStream>>: tokio::io::async_read::AsyncRead is not satisfied
--> src/channel/rmux.rs:182:65
182
let ws = match tokio_tungstenite::client_async(url, conn).await {
------------------------------- ^^^^ the trait tokio::io::async_read::AsyncRead is not implemented for AsyncTokioIO<async_tls::client::TlsStream<AsyncTcpStream>>
required by a bound introduced by this call
note: required by a bound in client_async
--> /tmp/codon/tmp/cache/cargo/registry/src/github.com-1ecc6299db9ec823/tokio-tungstenite-0.16.1/src/lib.rs:83:8
83
S: AsyncRead + AsyncWrite + Unpin,
^^^^^^^^^ required by this bound in client_async
error[E0277]: the trait bound AsyncTokioIO<async_tls::client::TlsStream<AsyncTcpStream>>: tokio::io::async_write::AsyncWrite is not satisfied
--> src/channel/rmux.rs:182:65
182
let ws = match tokio_tungstenite::client_async(url, conn).await {
------------------------------- ^^^^ the trait tokio::io::async_write::AsyncWrite is not implemented for AsyncTokioIO<async_tls::client::TlsStream<AsyncTcpStream>>
required by a bound introduced by this call
note: required by a bound in client_async
--> /tmp/codon/tmp/cache/cargo/registry/src/github.com-1ecc6299db9ec823/tokio-tungstenite-0.16.1/src/lib.rs:83:20
83
S: AsyncRead + AsyncWrite + Unpin,
^^^^^^^^^^ required by this bound in client_async
error[E0599]: the method split exists for struct WebSocketStream<AsyncTokioIO<async_tls::client::TlsStream<AsyncTcpStream>>>, but its trait bounds were not satisfied
--> src/channel/rmux.rs:186:36
186
let (write, read) = ws.split();
^^^^^ method cannot be called on WebSocketStream<AsyncTokioIO<async_tls::client::TlsStream<AsyncTcpStream>>> due to unsatisfied trait bounds
= note: the following trait bounds were not satisfied:
`WebSocketStream<AsyncTokioIO<async_tls::client::TlsStream<AsyncTcpStream>>>: futures::Stream`
which is required by `WebSocketStream<AsyncTokioIO<async_tls::client::TlsStream<AsyncTcpStream>>>: futures::StreamExt`
`&WebSocketStream<AsyncTokioIO<async_tls::client::TlsStream<AsyncTcpStream>>>: futures::Stream`
which is required by `&WebSocketStream<AsyncTokioIO<async_tls::client::TlsStream<AsyncTcpStream>>>: futures::StreamExt`
`&mut WebSocketStream<AsyncTokioIO<async_tls::client::TlsStream<AsyncTcpStream>>>: futures::Stream`
which is required by `&mut WebSocketStream<AsyncTokioIO<async_tls::client::TlsStream<AsyncTcpStream>>>: futures::StreamExt`
error[E0599]: the method poll_next exists for struct Pin<&mut &mut SplitStream<WebSocketStream<S>>>, but its trait bounds were not satisfied
--> src/utils/ws.rs:33:22
33
match stream.poll_next(cx) {
^^^^^^^^^ method cannot be called on Pin<&mut &mut SplitStream<WebSocketStream<S>>> due to unsatisfied trait bounds
= note: the following trait bounds were not satisfied:
SplitStream<WebSocketStream<S>>: futures::Stream
which is required by &mut SplitStream<WebSocketStream<S>>: futures::Stream
error[E0599]: the method send exists for mutable reference &mut SplitSink<WebSocketStream<S>, tungstenite::Message>, but its trait bounds were not satisfied
--> src/utils/ws.rs:98:27
98
let future = sink.send(msg);
^^^^ method cannot be called on &mut SplitSink<WebSocketStream<S>, tungstenite::Message> due to unsatisfied trait bounds
= note: the following trait bounds were not satisfied:
SplitSink<WebSocketStream<S>, tungstenite::Message>: futures::Sink<_>
which is required by SplitSink<WebSocketStream<S>, tungstenite::Message>: SinkExt<_>&mut SplitSink<WebSocketStream<S>, tungstenite::Message>: futures::Sink<_>
which is required by &mut SplitSink<WebSocketStream<S>, tungstenite::Message>: SinkExt<_>
error[E0599]: no method named as_mut found for struct Pin<&mut _> in the current scope
--> src/utils/ws.rs:100:22
100
match future.as_mut().poll(cx) {
^^^^^^ method not found in Pin<&mut _>
= note: the method was found for
- `Pin<P>`
= note: `future` is a function, perhaps you wish to call it
error[E0599]: the method close exists for mutable reference &mut SplitSink<WebSocketStream<S>, tungstenite::Message>, but its trait bounds were not satisfied
--> src/utils/ws.rs:114:27
114
let future = sink.close();
^^^^^ method cannot be called on &mut SplitSink<WebSocketStream<S>, tungstenite::Message> due to unsatisfied trait bounds
= note: the following trait bounds were not satisfied:
`SplitSink<WebSocketStream<S>, tungstenite::Message>: futures::Sink<_>`
which is required by `SplitSink<WebSocketStream<S>, tungstenite::Message>: SinkExt<_>`
`&mut SplitSink<WebSocketStream<S>, tungstenite::Message>: futures::Sink<_>`
which is required by `&mut SplitSink<WebSocketStream<S>, tungstenite::Message>: SinkExt<_>`
error[E0599]: no method named as_mut found for struct Pin<&mut _> in the current scope
--> src/utils/ws.rs:116:22
116
match future.as_mut().poll(cx) {
^^^^^^ method not found in Pin<&mut _>
= note: the method was found for
- `Pin<P>`
= note: `future` is a function, perhaps you wish to call it
warning: unused import: Stream
--> src/utils/ws.rs:4:32
|
4 | use futures::{Future, SinkExt, Stream};
| ^^^^^^
Some errors have detailed explanations: E0277, E0599.
For more information about an error, try rustc --explain E0277.
warning: rsnova (lib) generated 18 warnings
error: could not compile rsnova due to 14 previous errors; 18 warnings emitted
warning: build failed, waiting for other jobs to finish...
error: build failed
! Push rejected, failed to compile Rust app.
! Push failed
bytes::BytesMut
--> src/channel/rmux.rs:14:5#[warn(unused_imports)]
on by default warning: unused import:std::error::Error
--> src/channel/rmux.rs:16:5AsyncRead
--> src/channel/rmux.rs:18:31crate::utils::make_io_error
--> src/rmux/crypto.rs:4:5#[warn(unused_parens)]
on by default help: remove these parenthesesnew_window_update_event
--> src/rmux/session.rs:4:20Context
,Poll
--> src/rmux/session.rs:21:17AtomicU32
,Ordering
--> src/tunnel/relay.rs:9:25std::error::Error
--> src/tunnel/ws.rs:9:5loop { ... }
--> src/utils/io.rs:210:5loop
loop { ... }
--> src/utils/io.rs:224:5loop
warning: unused import:std::net::ToSocketAddrs
--> src/utils/net.rs:20:9std::error::Error
--> src/utils/ws.rs:5:5tokio::net::TcpStream: tokio::io::async_read::AsyncRead
is not satisfied --> src/tunnel/ws.rs:76:59tokio::io::async_read::AsyncRead
is not implemented fortokio::net::TcpStream
accept_async
--> /tmp/codon/tmp/cache/cargo/registry/src/github.com-1ecc6299db9ec823/tokio-tungstenite-0.16.1/src/lib.rs:123:8accept_async
error[E0277]: the trait boundtokio::net::TcpStream: tokio::io::async_write::AsyncWrite
is not satisfied --> src/tunnel/ws.rs:76:59tokio::io::async_write::AsyncWrite
is not implemented fortokio::net::TcpStream
accept_async
--> /tmp/codon/tmp/cache/cargo/registry/src/github.com-1ecc6299db9ec823/tokio-tungstenite-0.16.1/src/lib.rs:123:20accept_async
error[E0599]: the methodsplit
exists for structWebSocketStream<tokio::net::TcpStream>
, but its trait bounds were not satisfied --> src/tunnel/ws.rs:82:35WebSocketStream<tokio::net::TcpStream>
due to unsatisfied trait bounds{_: futures::StreamExt
_: futures::Stream
tokio::net::TcpStream: tokio::io::async_read::AsyncRead
is not satisfied --> src/channel/rmux.rs:161:65tokio::io::async_read::AsyncRead
is not implemented fortokio::net::TcpStream
client_async
--> /tmp/codon/tmp/cache/cargo/registry/src/github.com-1ecc6299db9ec823/tokio-tungstenite-0.16.1/src/lib.rs:83:8client_async
error[E0277]: the trait boundtokio::net::TcpStream: tokio::io::async_write::AsyncWrite
is not satisfied --> src/channel/rmux.rs:161:65tokio::io::async_write::AsyncWrite
is not implemented fortokio::net::TcpStream
client_async
--> /tmp/codon/tmp/cache/cargo/registry/src/github.com-1ecc6299db9ec823/tokio-tungstenite-0.16.1/src/lib.rs:83:20client_async
error[E0599]: the methodsplit
exists for structWebSocketStream<tokio::net::TcpStream>
, but its trait bounds were not satisfied --> src/channel/rmux.rs:165:36WebSocketStream<tokio::net::TcpStream>
due to unsatisfied trait bounds{_: futures::StreamExt
_: futures::Stream
AsyncTokioIO<async_tls::client::TlsStream<AsyncTcpStream>>: tokio::io::async_read::AsyncRead
is not satisfied --> src/channel/rmux.rs:182:65tokio::io::async_read::AsyncRead
is not implemented forAsyncTokioIO<async_tls::client::TlsStream<AsyncTcpStream>>
client_async
--> /tmp/codon/tmp/cache/cargo/registry/src/github.com-1ecc6299db9ec823/tokio-tungstenite-0.16.1/src/lib.rs:83:8client_async
error[E0277]: the trait boundAsyncTokioIO<async_tls::client::TlsStream<AsyncTcpStream>>: tokio::io::async_write::AsyncWrite
is not satisfied --> src/channel/rmux.rs:182:65tokio::io::async_write::AsyncWrite
is not implemented forAsyncTokioIO<async_tls::client::TlsStream<AsyncTcpStream>>
client_async
--> /tmp/codon/tmp/cache/cargo/registry/src/github.com-1ecc6299db9ec823/tokio-tungstenite-0.16.1/src/lib.rs:83:20client_async
error[E0599]: the methodsplit
exists for structWebSocketStream<AsyncTokioIO<async_tls::client::TlsStream<AsyncTcpStream>>>
, but its trait bounds were not satisfied --> src/channel/rmux.rs:186:36WebSocketStream<AsyncTokioIO<async_tls::client::TlsStream<AsyncTcpStream>>>
due to unsatisfied trait bounds{_: futures::StreamExt
_: futures::Stream
poll_next
exists for structPin<&mut &mut SplitStream<WebSocketStream<S>>>
, but its trait bounds were not satisfied --> src/utils/ws.rs:33:22Pin<&mut &mut SplitStream<WebSocketStream<S>>>
due to unsatisfied trait bounds(BiLock);SplitStream<WebSocketStream<S>>: futures::Stream
SplitStream<WebSocketStream<S>>: futures::Stream
which is required by&mut SplitStream<WebSocketStream<S>>: futures::Stream
error[E0599]: the methodsend
exists for mutable reference&mut SplitSink<WebSocketStream<S>, tungstenite::Message>
, but its trait bounds were not satisfied --> src/utils/ws.rs:98:27&mut SplitSink<WebSocketStream<S>, tungstenite::Message>
due to unsatisfied trait bounds_: SinkExt<_>
_: futures::Sink<_>
SplitSink<WebSocketStream<S>, tungstenite::Message>: futures::Sink<_>
which is required bySplitSink<WebSocketStream<S>, tungstenite::Message>: SinkExt<_>
&mut SplitSink<WebSocketStream<S>, tungstenite::Message>: futures::Sink<_>
which is required by&mut SplitSink<WebSocketStream<S>, tungstenite::Message>: SinkExt<_>
error[E0599]: no method namedas_mut
found for structPin<&mut _>
in the current scope --> src/utils/ws.rs:100:22Pin<&mut _>
close
exists for mutable reference&mut SplitSink<WebSocketStream<S>, tungstenite::Message>
, but its trait bounds were not satisfied --> src/utils/ws.rs:114:27&mut SplitSink<WebSocketStream<S>, tungstenite::Message>
due to unsatisfied trait bounds_: SinkExt<_>
_: futures::Sink<_>
as_mut
found for structPin<&mut _>
in the current scope --> src/utils/ws.rs:116:22Pin<&mut _>
futures::StreamExt
--> src/channel/rmux.rs:15:5futures::StreamExt
--> src/tunnel/ws.rs:8:5Future
--> src/utils/ws.rs:4:15SinkExt
--> src/utils/ws.rs:4:23warning: unused import:
Stream
--> src/utils/ws.rs:4:32 | 4 | use futures::{Future, SinkExt, Stream}; | ^^^^^^ Some errors have detailed explanations: E0277, E0599. For more information about an error, tryrustc --explain E0277
. warning:rsnova
(lib) generated 18 warnings error: could not compilersnova
due to 14 previous errors; 18 warnings emitted warning: build failed, waiting for other jobs to finish... error: build failed ! Push rejected, failed to compile Rust app. ! Push failed