pub async fn copy_len_with_progress<R, W, P>( read: R, write: W, buf: &mut [u8], len: u64, progress: P, ) -> Result<u64, CopyError<<R as ErrorType>::Error, <W as ErrorType>::Error>>where R: Read, W: Write, P: Fn(u64, u64),