title: rust tokio trait bounds were not satisfied on forward method
body: <p>I upgraded <code>wrap</code> and <code>tokio</code> in my rust project and after the upgrade, the forward method got an error. I searched through the documentation but there was no forward method in the new version of tokio framework.</p>
  <h2>Error</h2>
  <pre><code>error[E0599]: the method `forward` exists for struct `tokio::sync::mpsc::UnboundedReceiver&lt;_&gt;`, but its trait bounds were not satisfied
  
  
  tokio::task::spawn(client_rcv.forward(client_ws_sender).map(|result| {
                                        ^^^^^^^ method cannot be called on `tokio::sync::mpsc::UnboundedReceiver&lt;_&gt;` due to unsatisfied trait bounds
  40 | pub struct UnboundedReceiver&lt;T&gt; {
     | -------------------------------
     | |
     | doesn't satisfy `_: warp::Stream`
     | doesn't satisfy `tokio::sync::mpsc::UnboundedReceiver&lt;_&gt;: StreamExt`
     |
     = note: the following trait bounds were not satisfied:
             `tokio::sync::mpsc::UnboundedReceiver&lt;_&gt;: warp::Stream`
             which is required by `tokio::sync::mpsc::UnboundedReceiver&lt;_&gt;: StreamExt`
             `&amp;tokio::sync::mpsc::UnboundedReceiver&lt;_&gt;: warp::Stream`
             which is required by `&amp;tokio::sync::mpsc::UnboundedReceiver&lt;_&gt;: StreamExt`
             `&amp;mut tokio::sync::mpsc::UnboundedReceiver&lt;_&gt;: warp::Stream`
             which is required by `&amp;mut tokio::sync::mpsc::UnboundedReceiver&lt;_&gt;: StreamExt`
  </code></pre>
  <h3>Code:</h3>
  <pre class="lang-rust prettyprint-override"><code>let (client_ws_sender, mut client_ws_rcv) = ws.split();
  let (client_sender, client_rcv) = mpsc::unbounded_channel();
  
  tokio::task::spawn(client_rcv.forward(client_ws_sender).map(|result| {
      if let Err(e) = result {
          eprintln!(&quot;error sending websocket msg: {}&quot;, e);
      }
  }));
  </code></pre>
  <h3>Cargo Dependecies:</h3>
  <pre><code>[dependencies]
  tokio = { version = &quot;1.6.0&quot;, features = [&quot;full&quot;] }
  warp = &quot;0.3.1&quot;
  serde = {version = &quot;1.0&quot;, features = [&quot;derive&quot;] }
  serde_json = &quot;1.0&quot;
  futures = { version = &quot;0.3&quot;, default-features = false }
  uuid = { version = &quot;0.8.2&quot;, features = [&quot;serde&quot;, &quot;v4&quot;] }
  </code></pre>