use hyper::http::request::Parts;
use hyper::{header, Body, Response, StatusCode};
use serde_json::{json, Value};
+use tokio_stream::wrappers::ReceiverStream;
use proxmox::api::{
api, ApiResponseFuture, ApiHandler, ApiMethod, Router,
.map_err(|err| eprintln!("error during finishing of zip: {}", err))
});
- Body::wrap_stream(receiver.map_err(move |err| {
+ Body::wrap_stream(ReceiverStream::new(receiver).map_err(move |err| {
eprintln!("error during streaming of zip '{:?}' - {}", filepath, err);
err
}))
use futures::stream::{StreamExt, TryStreamExt};
use serde_json::{json, Value};
use tokio::sync::mpsc;
+use tokio_stream::wrappers::ReceiverStream;
use xdg::BaseDirectories;
use pathpatterns::{MatchEntry, MatchType, PatternFlag};
let (mut tx, rx) = mpsc::channel(10); // allow to buffer 10 chunks
- let stream = rx
+ let stream = ReceiverStream::new(rx)
.map_err(Error::from);
// spawn chunker inside a separate task so that it can run parallel
use futures::*;
use hyper;
use openssl::ssl::{SslMethod, SslAcceptor, SslFiletype};
+use tokio_stream::wrappers::ReceiverStream;
use proxmox::try_block;
use proxmox::api::RpcEnvironmentType;
|listener, ready| {
let connections = accept_connections(listener, acceptor, debug);
- let connections = hyper::server::accept::from_stream(connections);
+ let connections = hyper::server::accept::from_stream(ReceiverStream::new(connections));
Ok(ready
.and_then(|_| hyper::Server::builder(connections)
use serde_json::{json, Value};
use tokio::io::AsyncReadExt;
use tokio::sync::{mpsc, oneshot};
+use tokio_stream::wrappers::ReceiverStream;
use proxmox::tools::digest_to_hex;
// });
// old code for reference?
tokio::spawn(
- verify_queue_rx
+ ReceiverStream::new(verify_queue_rx)
.map(Ok::<_, Error>)
.try_for_each(move |response: h2::client::ResponseFuture| {
response
// FIXME: async-block-ify this code!
tokio::spawn(
- verify_queue_rx
+ ReceiverStream::new(verify_queue_rx)
.map(Ok::<_, Error>)
.and_then(move |(merged_chunk_info, response): (MergedChunkInfo, Option<h2::client::ResponseFuture>)| {
match (response, merged_chunk_info) {