This is an automated email from the ASF dual-hosted git repository.
xuanwo pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/opendal.git
The following commit(s) were added to refs/heads/main by this push:
new 753d4a83c refactor: refactor all body.copy_to_bytes(body.remaining())
(#5561)
753d4a83c is described below
commit 753d4a83cc9e2401414e3aaa65d3eee487ab5f6c
Author: yihong <[email protected]>
AuthorDate: Fri Jan 17 14:33:33 2025 +0800
refactor: refactor all body.copy_to_bytes(body.remaining()) (#5561)
Co-authored-by: Xuanwo <[email protected]>
---
core/src/services/aliyun_drive/error.rs | 4 ++--
core/src/services/alluxio/error.rs | 4 ++--
core/src/services/azdls/error.rs | 4 ++--
core/src/services/azfile/error.rs | 4 ++--
core/src/services/b2/error.rs | 4 ++--
core/src/services/chainsafe/error.rs | 4 ++--
core/src/services/cloudflare_kv/error.rs | 4 ++--
core/src/services/cos/error.rs | 4 ++--
core/src/services/d1/backend.rs | 5 ++---
core/src/services/d1/error.rs | 4 ++--
core/src/services/dbfs/error.rs | 5 ++---
core/src/services/dropbox/error.rs | 5 ++---
core/src/services/gdrive/error.rs | 5 ++---
core/src/services/ghac/error.rs | 5 ++---
core/src/services/github/error.rs | 4 ++--
core/src/services/http/error.rs | 5 ++---
core/src/services/huggingface/error.rs | 5 ++---
core/src/services/icloud/core.rs | 4 ++--
core/src/services/ipfs/error.rs | 5 ++---
core/src/services/ipmfs/error.rs | 5 ++---
core/src/services/koofr/error.rs | 5 ++---
core/src/services/lakefs/error.rs | 5 ++---
core/src/services/libsql/error.rs | 5 ++---
core/src/services/obs/error.rs | 4 ++--
core/src/services/onedrive/error.rs | 5 ++---
core/src/services/onedrive/writer.rs | 2 +-
core/src/services/oss/error.rs | 4 ++--
core/src/services/pcloud/error.rs | 5 ++---
core/src/services/s3/backend.rs | 4 ++--
core/src/services/seafile/error.rs | 4 ++--
core/src/services/supabase/error.rs | 5 ++---
core/src/services/swift/error.rs | 4 ++--
core/src/services/upyun/error.rs | 4 ++--
core/src/services/vercel_artifacts/error.rs | 5 ++---
core/src/services/vercel_blob/error.rs | 4 ++--
core/src/services/webdav/error.rs | 5 ++---
core/src/services/webhdfs/error.rs | 5 ++---
core/src/services/yandex_disk/error.rs | 4 ++--
38 files changed, 75 insertions(+), 93 deletions(-)
diff --git a/core/src/services/aliyun_drive/error.rs
b/core/src/services/aliyun_drive/error.rs
index 8c06b988a..fc90cfcd8 100644
--- a/core/src/services/aliyun_drive/error.rs
+++ b/core/src/services/aliyun_drive/error.rs
@@ -28,8 +28,8 @@ struct AliyunDriveError {
}
pub(super) fn parse_error(res: Response<Buffer>) -> Error {
- let (parts, mut body) = res.into_parts();
- let bs = body.copy_to_bytes(body.remaining());
+ let (parts, body) = res.into_parts();
+ let bs = body.to_bytes();
let (code, message) = serde_json::from_reader::<_,
AliyunDriveError>(bs.clone().reader())
.map(|err| (Some(err.code), err.message))
.unwrap_or((None, String::from_utf8_lossy(&bs).into_owned()));
diff --git a/core/src/services/alluxio/error.rs
b/core/src/services/alluxio/error.rs
index 6b7da11d2..71935cee7 100644
--- a/core/src/services/alluxio/error.rs
+++ b/core/src/services/alluxio/error.rs
@@ -32,8 +32,8 @@ struct AlluxioError {
}
pub(super) fn parse_error(resp: Response<Buffer>) -> Error {
- let (parts, mut body) = resp.into_parts();
- let bs = body.copy_to_bytes(body.remaining());
+ let (parts, body) = resp.into_parts();
+ let bs = body.to_bytes();
let mut kind = match parts.status.as_u16() {
500 => ErrorKind::Unexpected,
diff --git a/core/src/services/azdls/error.rs b/core/src/services/azdls/error.rs
index 95e09bf88..7ba598160 100644
--- a/core/src/services/azdls/error.rs
+++ b/core/src/services/azdls/error.rs
@@ -60,8 +60,8 @@ impl Debug for AzdlsError {
/// Parse error response into Error.
pub(super) fn parse_error(resp: Response<Buffer>) -> Error {
- let (parts, mut body) = resp.into_parts();
- let bs = body.copy_to_bytes(body.remaining());
+ let (parts, body) = resp.into_parts();
+ let bs = body.to_bytes();
let (kind, retryable) = match parts.status {
StatusCode::NOT_FOUND => (ErrorKind::NotFound, false),
diff --git a/core/src/services/azfile/error.rs
b/core/src/services/azfile/error.rs
index 63f8b933f..bd0cf9042 100644
--- a/core/src/services/azfile/error.rs
+++ b/core/src/services/azfile/error.rs
@@ -60,8 +60,8 @@ impl Debug for AzfileError {
/// Parse error response into Error.
pub(super) fn parse_error(resp: Response<Buffer>) -> Error {
- let (parts, mut body) = resp.into_parts();
- let bs = body.copy_to_bytes(body.remaining());
+ let (parts, body) = resp.into_parts();
+ let bs = body.to_bytes();
let (kind, retryable) = match parts.status {
StatusCode::NOT_FOUND => (ErrorKind::NotFound, false),
diff --git a/core/src/services/b2/error.rs b/core/src/services/b2/error.rs
index 678b5bb83..4c2328269 100644
--- a/core/src/services/b2/error.rs
+++ b/core/src/services/b2/error.rs
@@ -33,8 +33,8 @@ struct B2Error {
/// Parse error response into Error.
pub(super) fn parse_error(resp: Response<Buffer>) -> Error {
- let (parts, mut body) = resp.into_parts();
- let bs = body.copy_to_bytes(body.remaining());
+ let (parts, body) = resp.into_parts();
+ let bs = body.to_bytes();
let (mut kind, mut retryable) = match parts.status.as_u16() {
403 => (ErrorKind::PermissionDenied, false),
diff --git a/core/src/services/chainsafe/error.rs
b/core/src/services/chainsafe/error.rs
index 2a546c314..87f78e40c 100644
--- a/core/src/services/chainsafe/error.rs
+++ b/core/src/services/chainsafe/error.rs
@@ -37,8 +37,8 @@ struct ChainsafeSubError {
/// Parse error response into Error.
pub(super) fn parse_error(resp: Response<Buffer>) -> Error {
- let (parts, mut body) = resp.into_parts();
- let bs = body.copy_to_bytes(body.remaining());
+ let (parts, body) = resp.into_parts();
+ let bs = body.to_bytes();
let (kind, retryable) = match parts.status.as_u16() {
401 | 403 => (ErrorKind::PermissionDenied, false),
diff --git a/core/src/services/cloudflare_kv/error.rs
b/core/src/services/cloudflare_kv/error.rs
index 79a7b0dfc..b04eb3e57 100644
--- a/core/src/services/cloudflare_kv/error.rs
+++ b/core/src/services/cloudflare_kv/error.rs
@@ -27,8 +27,8 @@ use crate::*;
/// Parse error response into Error.
pub(super) fn parse_error(resp: Response<Buffer>) -> Error {
- let (parts, mut body) = resp.into_parts();
- let bs = body.copy_to_bytes(body.remaining());
+ let (parts, body) = resp.into_parts();
+ let bs = body.to_bytes();
let (mut kind, mut retryable) = match parts.status {
StatusCode::NOT_FOUND => (ErrorKind::NotFound, false),
diff --git a/core/src/services/cos/error.rs b/core/src/services/cos/error.rs
index df5f95df5..4d767e277 100644
--- a/core/src/services/cos/error.rs
+++ b/core/src/services/cos/error.rs
@@ -37,8 +37,8 @@ struct CosError {
/// Parse error response into Error.
pub(super) fn parse_error(resp: Response<Buffer>) -> Error {
- let (parts, mut body) = resp.into_parts();
- let bs = body.copy_to_bytes(body.remaining());
+ let (parts, body) = resp.into_parts();
+ let bs = body.to_bytes();
let (kind, retryable) = match parts.status {
StatusCode::NOT_FOUND => (ErrorKind::NotFound, false),
diff --git a/core/src/services/d1/backend.rs b/core/src/services/d1/backend.rs
index a86d47ab8..b6897aa3e 100644
--- a/core/src/services/d1/backend.rs
+++ b/core/src/services/d1/backend.rs
@@ -18,7 +18,6 @@
use std::fmt::Debug;
use std::fmt::Formatter;
-use bytes::Buf;
use http::header;
use http::Request;
use http::StatusCode;
@@ -287,8 +286,8 @@ impl kv::Adapter for Adapter {
let status = resp.status();
match status {
StatusCode::OK | StatusCode::PARTIAL_CONTENT => {
- let mut body = resp.into_body();
- let bs = body.copy_to_bytes(body.remaining());
+ let body = resp.into_body();
+ let bs = body.to_bytes();
let d1_response = D1Response::parse(&bs)?;
Ok(d1_response.get_result(&self.value_field))
}
diff --git a/core/src/services/d1/error.rs b/core/src/services/d1/error.rs
index f9cdf66b2..37f6b9556 100644
--- a/core/src/services/d1/error.rs
+++ b/core/src/services/d1/error.rs
@@ -27,8 +27,8 @@ use crate::*;
/// Parse error response into Error.
pub(super) fn parse_error(resp: Response<Buffer>) -> Error {
- let (parts, mut body) = resp.into_parts();
- let bs = body.copy_to_bytes(body.remaining());
+ let (parts, body) = resp.into_parts();
+ let bs = body.to_bytes();
let (mut kind, mut retryable) = match parts.status {
StatusCode::NOT_FOUND => (ErrorKind::NotFound, false),
diff --git a/core/src/services/dbfs/error.rs b/core/src/services/dbfs/error.rs
index ca5b3a2c2..666466b72 100644
--- a/core/src/services/dbfs/error.rs
+++ b/core/src/services/dbfs/error.rs
@@ -17,7 +17,6 @@
use std::fmt::Debug;
-use bytes::Buf;
use http::Response;
use http::StatusCode;
use serde::Deserialize;
@@ -44,8 +43,8 @@ impl Debug for DbfsError {
}
pub(super) fn parse_error(resp: Response<Buffer>) -> Error {
- let (parts, mut body) = resp.into_parts();
- let bs = body.copy_to_bytes(body.remaining());
+ let (parts, body) = resp.into_parts();
+ let bs = body.to_bytes();
let (kind, retryable) = match parts.status {
StatusCode::NOT_FOUND => (ErrorKind::NotFound, false),
diff --git a/core/src/services/dropbox/error.rs
b/core/src/services/dropbox/error.rs
index ec242c6f7..715d029ed 100644
--- a/core/src/services/dropbox/error.rs
+++ b/core/src/services/dropbox/error.rs
@@ -15,7 +15,6 @@
// specific language governing permissions and limitations
// under the License.
-use bytes::Buf;
use http::Response;
use http::StatusCode;
use serde::Deserialize;
@@ -31,8 +30,8 @@ pub struct DropboxErrorResponse {
/// Parse error response into Error.
pub(super) fn parse_error(resp: Response<Buffer>) -> Error {
- let (parts, mut body) = resp.into_parts();
- let bs = body.copy_to_bytes(body.remaining());
+ let (parts, body) = resp.into_parts();
+ let bs = body.to_bytes();
let (mut kind, mut retryable) = match parts.status {
StatusCode::NOT_FOUND => (ErrorKind::NotFound, false),
diff --git a/core/src/services/gdrive/error.rs
b/core/src/services/gdrive/error.rs
index 94e00789f..199e82e26 100644
--- a/core/src/services/gdrive/error.rs
+++ b/core/src/services/gdrive/error.rs
@@ -15,7 +15,6 @@
// specific language governing permissions and limitations
// under the License.
-use bytes::Buf;
use http::Response;
use http::StatusCode;
use serde::Deserialize;
@@ -35,8 +34,8 @@ struct GdriveInnerError {
/// Parse error response into Error.
pub(super) fn parse_error(resp: Response<Buffer>) -> Error {
- let (parts, mut body) = resp.into_parts();
- let bs = body.copy_to_bytes(body.remaining());
+ let (parts, body) = resp.into_parts();
+ let bs = body.to_bytes();
let (mut kind, mut retryable) = match parts.status {
StatusCode::NOT_FOUND => (ErrorKind::NotFound, false),
diff --git a/core/src/services/ghac/error.rs b/core/src/services/ghac/error.rs
index a2736e05b..7efafe1f6 100644
--- a/core/src/services/ghac/error.rs
+++ b/core/src/services/ghac/error.rs
@@ -15,7 +15,6 @@
// specific language governing permissions and limitations
// under the License.
-use bytes::Buf;
use http::Response;
use http::StatusCode;
@@ -24,7 +23,7 @@ use crate::*;
/// Parse error response into Error.
pub(super) fn parse_error(resp: Response<Buffer>) -> Error {
- let (parts, mut body) = resp.into_parts();
+ let (parts, body) = resp.into_parts();
let (kind, retryable) = match parts.status {
StatusCode::NOT_FOUND | StatusCode::NO_CONTENT =>
(ErrorKind::NotFound, false),
@@ -38,7 +37,7 @@ pub(super) fn parse_error(resp: Response<Buffer>) -> Error {
_ => (ErrorKind::Unexpected, false),
};
- let bs = body.copy_to_bytes(body.remaining());
+ let bs = body.to_bytes();
let message = String::from_utf8_lossy(&bs);
let mut err = Error::new(kind, message);
diff --git a/core/src/services/github/error.rs
b/core/src/services/github/error.rs
index 3109370ad..cfc259c11 100644
--- a/core/src/services/github/error.rs
+++ b/core/src/services/github/error.rs
@@ -37,8 +37,8 @@ struct GithubSubError {
/// Parse error response into Error.
pub(super) fn parse_error(resp: Response<Buffer>) -> Error {
- let (parts, mut body) = resp.into_parts();
- let bs = body.copy_to_bytes(body.remaining());
+ let (parts, body) = resp.into_parts();
+ let bs = body.to_bytes();
let (kind, retryable) = match parts.status.as_u16() {
401 | 403 => (ErrorKind::PermissionDenied, false),
diff --git a/core/src/services/http/error.rs b/core/src/services/http/error.rs
index e2c2947f8..091500892 100644
--- a/core/src/services/http/error.rs
+++ b/core/src/services/http/error.rs
@@ -15,7 +15,6 @@
// specific language governing permissions and limitations
// under the License.
-use bytes::Buf;
use http::Response;
use http::StatusCode;
@@ -24,8 +23,8 @@ use crate::*;
/// Parse error response into Error.
pub(super) fn parse_error(resp: Response<Buffer>) -> Error {
- let (parts, mut body) = resp.into_parts();
- let bs = body.copy_to_bytes(body.remaining());
+ let (parts, body) = resp.into_parts();
+ let bs = body.to_bytes();
let (kind, retryable) = match parts.status {
StatusCode::NOT_FOUND => (ErrorKind::NotFound, false),
diff --git a/core/src/services/huggingface/error.rs
b/core/src/services/huggingface/error.rs
index 61abc2c25..e69a70a25 100644
--- a/core/src/services/huggingface/error.rs
+++ b/core/src/services/huggingface/error.rs
@@ -17,7 +17,6 @@
use std::fmt::Debug;
-use bytes::Buf;
use http::Response;
use http::StatusCode;
use serde::Deserialize;
@@ -41,8 +40,8 @@ impl Debug for HuggingfaceError {
}
pub(super) fn parse_error(resp: Response<Buffer>) -> Error {
- let (parts, mut body) = resp.into_parts();
- let bs = body.copy_to_bytes(body.remaining());
+ let (parts, body) = resp.into_parts();
+ let bs = body.to_bytes();
let (kind, retryable) = match parts.status {
StatusCode::NOT_FOUND => (ErrorKind::NotFound, false),
diff --git a/core/src/services/icloud/core.rs b/core/src/services/icloud/core.rs
index 1028ba9f6..328a30af3 100644
--- a/core/src/services/icloud/core.rs
+++ b/core/src/services/icloud/core.rs
@@ -569,8 +569,8 @@ impl PathQuery for IcloudPathQuery {
}
pub(super) fn parse_error(resp: Response<Buffer>) -> Error {
- let (parts, mut body) = resp.into_parts();
- let bs = body.copy_to_bytes(body.remaining());
+ let (parts, body) = resp.into_parts();
+ let bs = body.to_bytes();
let mut kind = match parts.status.as_u16() {
421 | 450 | 500 => ErrorKind::NotFound,
diff --git a/core/src/services/ipfs/error.rs b/core/src/services/ipfs/error.rs
index 9f7e18316..e47eda369 100644
--- a/core/src/services/ipfs/error.rs
+++ b/core/src/services/ipfs/error.rs
@@ -15,7 +15,6 @@
// specific language governing permissions and limitations
// under the License.
-use bytes::Buf;
use http::Response;
use http::StatusCode;
@@ -24,8 +23,8 @@ use crate::*;
/// Parse error response into Error.
pub(super) fn parse_error(resp: Response<Buffer>) -> Error {
- let (parts, mut body) = resp.into_parts();
- let bs = body.copy_to_bytes(body.remaining());
+ let (parts, body) = resp.into_parts();
+ let bs = body.to_bytes();
let (kind, retryable) = match parts.status {
StatusCode::NOT_FOUND => (ErrorKind::NotFound, false),
diff --git a/core/src/services/ipmfs/error.rs b/core/src/services/ipmfs/error.rs
index 780e3388a..395b4e710 100644
--- a/core/src/services/ipmfs/error.rs
+++ b/core/src/services/ipmfs/error.rs
@@ -15,7 +15,6 @@
// specific language governing permissions and limitations
// under the License.
-use bytes::Buf;
use http::Response;
use http::StatusCode;
use serde::Deserialize;
@@ -45,8 +44,8 @@ struct IpfsError {
///
/// ref: https://docs.ipfs.tech/reference/kubo/rpc/#http-status-codes
pub(super) fn parse_error(resp: Response<Buffer>) -> Error {
- let (parts, mut body) = resp.into_parts();
- let bs = body.copy_to_bytes(body.remaining());
+ let (parts, body) = resp.into_parts();
+ let bs = body.to_bytes();
let ipfs_error = de::from_slice::<IpfsError>(&bs).ok();
diff --git a/core/src/services/koofr/error.rs b/core/src/services/koofr/error.rs
index 7929c2de3..760f20119 100644
--- a/core/src/services/koofr/error.rs
+++ b/core/src/services/koofr/error.rs
@@ -15,7 +15,6 @@
// specific language governing permissions and limitations
// under the License.
-use bytes::Buf;
use http::Response;
use crate::raw::*;
@@ -23,8 +22,8 @@ use crate::*;
/// Parse error response into Error.
pub(super) fn parse_error(resp: Response<Buffer>) -> Error {
- let (parts, mut body) = resp.into_parts();
- let bs = body.copy_to_bytes(body.remaining());
+ let (parts, body) = resp.into_parts();
+ let bs = body.to_bytes();
let (kind, retryable) = match parts.status.as_u16() {
403 => (ErrorKind::PermissionDenied, false),
diff --git a/core/src/services/lakefs/error.rs
b/core/src/services/lakefs/error.rs
index 32c75d888..69934d747 100644
--- a/core/src/services/lakefs/error.rs
+++ b/core/src/services/lakefs/error.rs
@@ -17,7 +17,6 @@
use std::fmt::Debug;
-use bytes::Buf;
use http::Response;
use http::StatusCode;
use serde::Deserialize;
@@ -41,8 +40,8 @@ impl Debug for LakefsError {
}
pub(super) fn parse_error(resp: Response<Buffer>) -> Error {
- let (parts, mut body) = resp.into_parts();
- let bs = body.copy_to_bytes(body.remaining());
+ let (parts, body) = resp.into_parts();
+ let bs = body.to_bytes();
let (kind, retryable) = match parts.status {
StatusCode::NOT_FOUND => (ErrorKind::NotFound, false),
diff --git a/core/src/services/libsql/error.rs
b/core/src/services/libsql/error.rs
index 8019ce29a..54af90a53 100644
--- a/core/src/services/libsql/error.rs
+++ b/core/src/services/libsql/error.rs
@@ -15,7 +15,6 @@
// specific language governing permissions and limitations
// under the License.
-use bytes::Buf;
use http::Response;
use http::StatusCode;
@@ -24,8 +23,8 @@ use crate::*;
/// Parse error response into Error.
pub(super) fn parse_error(resp: Response<Buffer>) -> Error {
- let (parts, mut body) = resp.into_parts();
- let bs = body.copy_to_bytes(body.remaining());
+ let (parts, body) = resp.into_parts();
+ let bs = body.to_bytes();
let (kind, retryable) = match parts.status {
StatusCode::NOT_FOUND => (ErrorKind::NotFound, false),
diff --git a/core/src/services/obs/error.rs b/core/src/services/obs/error.rs
index f67afdae5..21ddd5f97 100644
--- a/core/src/services/obs/error.rs
+++ b/core/src/services/obs/error.rs
@@ -37,8 +37,8 @@ struct ObsError {
/// Parse error response into Error.
pub(super) fn parse_error(resp: Response<Buffer>) -> Error {
- let (parts, mut body) = resp.into_parts();
- let bs = body.copy_to_bytes(body.remaining());
+ let (parts, body) = resp.into_parts();
+ let bs = body.to_bytes();
let (kind, retryable) = match parts.status {
StatusCode::NOT_FOUND => (ErrorKind::NotFound, false),
diff --git a/core/src/services/onedrive/error.rs
b/core/src/services/onedrive/error.rs
index ab396a499..8564eedc6 100644
--- a/core/src/services/onedrive/error.rs
+++ b/core/src/services/onedrive/error.rs
@@ -15,7 +15,6 @@
// specific language governing permissions and limitations
// under the License.
-use bytes::Buf;
use http::Response;
use http::StatusCode;
@@ -24,8 +23,8 @@ use crate::*;
/// Parse error response into Error.
pub(super) fn parse_error(resp: Response<Buffer>) -> Error {
- let (parts, mut body) = resp.into_parts();
- let bs = body.copy_to_bytes(body.remaining());
+ let (parts, body) = resp.into_parts();
+ let bs = body.to_bytes();
let (kind, retryable) = match parts.status {
StatusCode::NOT_FOUND => (ErrorKind::NotFound, false),
diff --git a/core/src/services/onedrive/writer.rs
b/core/src/services/onedrive/writer.rs
index f2a35d1e5..c6ed61f22 100644
--- a/core/src/services/onedrive/writer.rs
+++ b/core/src/services/onedrive/writer.rs
@@ -122,7 +122,7 @@ impl OneDriveWriter {
}
async fn create_upload_session(&self) ->
Result<OneDriveUploadSessionCreationResponseBody> {
- let file_name_from_path = self.path.split('/').last().ok_or_else(|| {
+ let file_name_from_path =
self.path.split('/').next_back().ok_or_else(|| {
Error::new(
ErrorKind::Unexpected,
"connection string must have AccountName",
diff --git a/core/src/services/oss/error.rs b/core/src/services/oss/error.rs
index 3cfeb66b0..9173d5026 100644
--- a/core/src/services/oss/error.rs
+++ b/core/src/services/oss/error.rs
@@ -36,8 +36,8 @@ struct OssError {
/// Parse error response into Error.
pub(super) fn parse_error(resp: Response<Buffer>) -> Error {
- let (parts, mut body) = resp.into_parts();
- let bs = body.copy_to_bytes(body.remaining());
+ let (parts, body) = resp.into_parts();
+ let bs = body.to_bytes();
let (kind, retryable) = match parts.status {
StatusCode::NOT_FOUND => (ErrorKind::NotFound, false),
diff --git a/core/src/services/pcloud/error.rs
b/core/src/services/pcloud/error.rs
index 2b1f3edbe..1234df1e2 100644
--- a/core/src/services/pcloud/error.rs
+++ b/core/src/services/pcloud/error.rs
@@ -18,7 +18,6 @@
use std::fmt::Debug;
use std::fmt::Formatter;
-use bytes::Buf;
use http::Response;
use serde::Deserialize;
@@ -43,8 +42,8 @@ impl Debug for PcloudError {
/// Parse error response into Error.
pub(super) fn parse_error(resp: Response<Buffer>) -> Error {
- let (parts, mut body) = resp.into_parts();
- let bs = body.copy_to_bytes(body.remaining());
+ let (parts, body) = resp.into_parts();
+ let bs = body.to_bytes();
let message = String::from_utf8_lossy(&bs).into_owned();
let mut err = Error::new(ErrorKind::Unexpected, message);
diff --git a/core/src/services/s3/backend.rs b/core/src/services/s3/backend.rs
index 3f3f00521..9145f22a7 100644
--- a/core/src/services/s3/backend.rs
+++ b/core/src/services/s3/backend.rs
@@ -751,10 +751,10 @@ impl Builder for S3Builder {
let checksum_algorithm = match
self.config.checksum_algorithm.as_deref() {
Some("crc32c") => Some(ChecksumAlgorithm::Crc32c),
None => None,
- _ => {
+ v => {
return Err(Error::new(
ErrorKind::ConfigInvalid,
- "{v} is not a supported checksum_algorithm.",
+ format!("{:?} is not a supported checksum_algorithm.", v),
))
}
};
diff --git a/core/src/services/seafile/error.rs
b/core/src/services/seafile/error.rs
index ab0bf6588..47a7bde53 100644
--- a/core/src/services/seafile/error.rs
+++ b/core/src/services/seafile/error.rs
@@ -31,8 +31,8 @@ struct SeafileError {
/// Parse error response into Error.
pub(super) fn parse_error(resp: Response<Buffer>) -> Error {
- let (parts, mut body) = resp.into_parts();
- let bs = body.copy_to_bytes(body.remaining());
+ let (parts, body) = resp.into_parts();
+ let bs = body.to_bytes();
let (kind, _retryable) = match parts.status.as_u16() {
403 => (ErrorKind::PermissionDenied, false),
diff --git a/core/src/services/supabase/error.rs
b/core/src/services/supabase/error.rs
index c2316eab8..273addb90 100644
--- a/core/src/services/supabase/error.rs
+++ b/core/src/services/supabase/error.rs
@@ -15,7 +15,6 @@
// specific language governing permissions and limitations
// under the License.
-use bytes::Buf;
use http::Response;
use http::StatusCode;
use serde::Deserialize;
@@ -35,8 +34,8 @@ struct SupabaseError {
/// Parse the supabase error type to the OpenDAL error type
pub(super) fn parse_error(resp: Response<Buffer>) -> Error {
- let (parts, mut body) = resp.into_parts();
- let bs = body.copy_to_bytes(body.remaining());
+ let (parts, body) = resp.into_parts();
+ let bs = body.to_bytes();
// Check HTTP status code first/
let (mut kind, mut retryable) = match parts.status.as_u16() {
diff --git a/core/src/services/swift/error.rs b/core/src/services/swift/error.rs
index 73afa4164..3bbb25f88 100644
--- a/core/src/services/swift/error.rs
+++ b/core/src/services/swift/error.rs
@@ -33,8 +33,8 @@ struct ErrorResponse {
}
pub(super) fn parse_error(resp: Response<Buffer>) -> Error {
- let (parts, mut body) = resp.into_parts();
- let bs = body.copy_to_bytes(body.remaining());
+ let (parts, body) = resp.into_parts();
+ let bs = body.to_bytes();
let (kind, retryable) = match parts.status {
StatusCode::NOT_FOUND => (ErrorKind::NotFound, false),
diff --git a/core/src/services/upyun/error.rs b/core/src/services/upyun/error.rs
index 317ea061d..3a8567cd7 100644
--- a/core/src/services/upyun/error.rs
+++ b/core/src/services/upyun/error.rs
@@ -34,8 +34,8 @@ struct UpyunError {
/// Parse error response into Error.
pub(super) fn parse_error(resp: Response<Buffer>) -> Error {
- let (parts, mut body) = resp.into_parts();
- let bs = body.copy_to_bytes(body.remaining());
+ let (parts, body) = resp.into_parts();
+ let bs = body.to_bytes();
let (kind, retryable) = match parts.status.as_u16() {
403 => (ErrorKind::PermissionDenied, false),
diff --git a/core/src/services/vercel_artifacts/error.rs
b/core/src/services/vercel_artifacts/error.rs
index ab396a499..8564eedc6 100644
--- a/core/src/services/vercel_artifacts/error.rs
+++ b/core/src/services/vercel_artifacts/error.rs
@@ -15,7 +15,6 @@
// specific language governing permissions and limitations
// under the License.
-use bytes::Buf;
use http::Response;
use http::StatusCode;
@@ -24,8 +23,8 @@ use crate::*;
/// Parse error response into Error.
pub(super) fn parse_error(resp: Response<Buffer>) -> Error {
- let (parts, mut body) = resp.into_parts();
- let bs = body.copy_to_bytes(body.remaining());
+ let (parts, body) = resp.into_parts();
+ let bs = body.to_bytes();
let (kind, retryable) = match parts.status {
StatusCode::NOT_FOUND => (ErrorKind::NotFound, false),
diff --git a/core/src/services/vercel_blob/error.rs
b/core/src/services/vercel_blob/error.rs
index 29ecced51..58f9420a1 100644
--- a/core/src/services/vercel_blob/error.rs
+++ b/core/src/services/vercel_blob/error.rs
@@ -39,8 +39,8 @@ struct VercelBlobErrorDetail {
/// Parse error response into Error.
pub(super) fn parse_error(resp: Response<Buffer>) -> Error {
- let (parts, mut body) = resp.into_parts();
- let bs = body.copy_to_bytes(body.remaining());
+ let (parts, body) = resp.into_parts();
+ let bs = body.to_bytes();
let (kind, retryable) = match parts.status.as_u16() {
403 => (ErrorKind::PermissionDenied, false),
diff --git a/core/src/services/webdav/error.rs
b/core/src/services/webdav/error.rs
index 0fa32efe8..bc3f2f4b3 100644
--- a/core/src/services/webdav/error.rs
+++ b/core/src/services/webdav/error.rs
@@ -15,7 +15,6 @@
// specific language governing permissions and limitations
// under the License.
-use bytes::Buf;
use http::Response;
use http::StatusCode;
@@ -24,8 +23,8 @@ use crate::*;
/// Parse error response into Error.
pub(super) fn parse_error(resp: Response<Buffer>) -> Error {
- let (parts, mut body) = resp.into_parts();
- let bs = body.copy_to_bytes(body.remaining());
+ let (parts, body) = resp.into_parts();
+ let bs = body.to_bytes();
let (kind, retryable) = match parts.status {
StatusCode::NOT_FOUND => (ErrorKind::NotFound, false),
diff --git a/core/src/services/webhdfs/error.rs
b/core/src/services/webhdfs/error.rs
index 1a3a486f7..2dd8ecb66 100644
--- a/core/src/services/webhdfs/error.rs
+++ b/core/src/services/webhdfs/error.rs
@@ -15,7 +15,6 @@
// specific language governing permissions and limitations
// under the License.
-use bytes::Buf;
use http::response::Parts;
use http::Response;
use http::StatusCode;
@@ -41,8 +40,8 @@ struct WebHdfsError {
}
pub(super) fn parse_error(resp: Response<Buffer>) -> Error {
- let (parts, mut body) = resp.into_parts();
- let bs = body.copy_to_bytes(body.remaining());
+ let (parts, body) = resp.into_parts();
+ let bs = body.to_bytes();
let s = String::from_utf8_lossy(&bs);
parse_error_msg(parts, &s)
}
diff --git a/core/src/services/yandex_disk/error.rs
b/core/src/services/yandex_disk/error.rs
index 1f3628445..78c397548 100644
--- a/core/src/services/yandex_disk/error.rs
+++ b/core/src/services/yandex_disk/error.rs
@@ -34,8 +34,8 @@ struct YandexDiskError {
/// Parse error response into Error.
pub(super) fn parse_error(resp: Response<Buffer>) -> Error {
- let (parts, mut body) = resp.into_parts();
- let bs = body.copy_to_bytes(body.remaining());
+ let (parts, body) = resp.into_parts();
+ let bs = body.to_bytes();
let (kind, retryable) = match parts.status.as_u16() {
410 | 403 => (ErrorKind::PermissionDenied, false),