Skip to content

Commit 9d75767

Browse files
committed
refactor: Remove deprecated APIs
Signed-off-by: Xuanwo <[email protected]>
1 parent 983beae commit 9d75767

File tree

8 files changed

+0
-295
lines changed

8 files changed

+0
-295
lines changed

Cargo.toml

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,8 +30,6 @@ layers-metrics = ["metrics"]
3030
layers-retry = ["backon"]
3131
# Enable layers tracing support.
3232
layers-tracing = ["tracing"]
33-
# DEPRACATED: use layers-retry instead
34-
retry = ["layers-retry"]
3533

3634
# Enable services hdfs support
3735
services-hdfs = ["hdrs"]

src/operator.rs

Lines changed: 0 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -224,39 +224,6 @@ impl Operator {
224224
}
225225
}
226226

227-
/// Configure backoff for operators
228-
///
229-
/// This function only provided if feature `retry` is enabled.
230-
///
231-
/// # Examples
232-
///
233-
/// ```
234-
/// # use std::sync::Arc;
235-
/// # use anyhow::Result;
236-
/// # use opendal::services::fs;
237-
/// # use opendal::services::fs::Builder;
238-
/// use backon::ExponentialBackoff;
239-
/// use opendal::Operator;
240-
/// use opendal::Scheme;
241-
///
242-
/// # #[tokio::main]
243-
/// # async fn main() -> Result<()> {
244-
/// let op = Operator::from_env(Scheme::Fs)?.with_backoff(ExponentialBackoff::default());
245-
/// // All operations will be retried if the error is retryable
246-
/// let _ = op.object("test_file").read();
247-
/// # Ok(())
248-
/// # }
249-
/// ```
250-
#[cfg(feature = "layers-retry")]
251-
#[must_use]
252-
#[deprecated = "Use `Operator::layer` and `RetryLayer` directly"]
253-
pub fn with_backoff(
254-
self,
255-
backoff: impl backon::Backoff + Send + Sync + std::fmt::Debug + 'static,
256-
) -> Self {
257-
self.layer(crate::layers::RetryLayer::new(backoff))
258-
}
259-
260227
fn inner(&self) -> Arc<dyn Accessor> {
261228
self.accessor.clone()
262229
}

src/services/azblob/backend.rs

Lines changed: 0 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -223,12 +223,6 @@ impl Builder {
223223
_account_name: mem::take(&mut self.account_name).unwrap_or_default(),
224224
})
225225
}
226-
227-
/// Consume builder to build an azblob backend.
228-
#[deprecated = "Use Builder::build() instead"]
229-
pub async fn finish(&mut self) -> Result<Arc<dyn Accessor>> {
230-
Ok(Arc::new(self.build()?))
231-
}
232226
}
233227

234228
/// Backend for azblob services.
@@ -243,12 +237,6 @@ pub struct Backend {
243237
}
244238

245239
impl Backend {
246-
/// Create a builder for azblob.
247-
#[deprecated = "Use Builder::default() instead"]
248-
pub fn build() -> Builder {
249-
Builder::default()
250-
}
251-
252240
pub(crate) fn from_iter(it: impl Iterator<Item = (String, String)>) -> Result<Self> {
253241
let mut builder = Builder::default();
254242

src/services/fs/backend.rs

Lines changed: 0 additions & 46 deletions
Original file line numberDiff line numberDiff line change
@@ -103,46 +103,6 @@ impl Builder {
103103
info!("backend build finished: {:?}", &self);
104104
Ok(Backend { root })
105105
}
106-
107-
/// Consume current builder to build an fs backend.
108-
#[deprecated = "Use Builder::build() instead"]
109-
pub async fn finish(&mut self) -> Result<Arc<dyn Accessor>> {
110-
info!("backend build started: {:?}", &self);
111-
112-
// Make `/` as the default of root.
113-
let root = match &self.root {
114-
None => "/".to_string(),
115-
Some(v) => {
116-
debug_assert!(!v.is_empty());
117-
118-
let mut v = v.clone();
119-
120-
if !v.starts_with('/') {
121-
return Err(other(BackendError::new(
122-
HashMap::from([("root".to_string(), v.clone())]),
123-
anyhow!("Root must start with /"),
124-
)));
125-
}
126-
if !v.ends_with('/') {
127-
v.push('/');
128-
}
129-
130-
v
131-
}
132-
};
133-
134-
// If root dir is not exist, we must create it.
135-
if let Err(e) = fs::metadata(&root).await {
136-
if e.kind() == std::io::ErrorKind::NotFound {
137-
fs::create_dir_all(&root)
138-
.await
139-
.map_err(|e| other(anyhow!("create dir in {} error {:?}", &root, e)))?;
140-
}
141-
}
142-
143-
info!("backend build finished: {:?}", &self);
144-
Ok(Arc::new(Backend { root }))
145-
}
146106
}
147107

148108
/// Backend is used to serve `Accessor` support for posix alike fs.
@@ -152,12 +112,6 @@ pub struct Backend {
152112
}
153113

154114
impl Backend {
155-
/// Create a builder.
156-
#[deprecated = "Use Builder::default() instead"]
157-
pub fn build() -> Builder {
158-
Builder::default()
159-
}
160-
161115
pub(crate) fn from_iter(it: impl Iterator<Item = (String, String)>) -> Result<Self> {
162116
let mut builder = Builder::default();
163117

src/services/hdfs/backend.rs

Lines changed: 0 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -152,12 +152,6 @@ impl Builder {
152152
client: Arc::new(client),
153153
})
154154
}
155-
156-
/// Finish the building and create hdfs backend.
157-
#[deprecated = "Use Builder::build() instead"]
158-
pub async fn finish(&mut self) -> Result<Arc<dyn Accessor>> {
159-
Ok(Arc::new(self.build()?))
160-
}
161155
}
162156

163157
/// Backend for hdfs services.
@@ -172,12 +166,6 @@ unsafe impl Send for Backend {}
172166
unsafe impl Sync for Backend {}
173167

174168
impl Backend {
175-
/// Create a builder.
176-
#[deprecated = "Use Builder::default() instead"]
177-
pub fn build() -> Builder {
178-
Builder::default()
179-
}
180-
181169
pub(crate) fn from_iter(it: impl Iterator<Item = (String, String)>) -> Result<Self> {
182170
let mut builder = Builder::default();
183171

src/services/http/backend.rs

Lines changed: 0 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -203,12 +203,6 @@ impl Builder {
203203
index: Arc::new(Mutex::new(mem::take(&mut self.index))),
204204
})
205205
}
206-
207-
/// Build a HTTP backend.
208-
#[deprecated = "Use Builder::build() instead"]
209-
pub async fn finish(&mut self) -> Result<Arc<dyn Accessor>> {
210-
Ok(Arc::new(self.build()?))
211-
}
212206
}
213207

214208
/// Backend is used to serve `Accessor` support for http.
@@ -238,12 +232,6 @@ impl Debug for Backend {
238232
}
239233

240234
impl Backend {
241-
/// Create a new builder for s3.
242-
#[deprecated = "Use Builder::default() instead"]
243-
pub fn build() -> Builder {
244-
Builder::default()
245-
}
246-
247235
pub(crate) fn from_iter(it: impl Iterator<Item = (String, String)>) -> Result<Self> {
248236
let mut builder = Builder::default();
249237

src/services/memory/backend.rs

Lines changed: 0 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -60,12 +60,6 @@ impl Builder {
6060
inner: Arc::new(Mutex::new(HashMap::default())),
6161
})
6262
}
63-
64-
/// Consume builder to build a memory backend.
65-
#[deprecated = "Use Builder::build() instead"]
66-
pub async fn finish(&mut self) -> Result<Arc<dyn Accessor>> {
67-
Ok(Arc::new(self.build()?))
68-
}
6963
}
7064

7165
/// Backend is used to serve `Accessor` support in memory.
@@ -74,14 +68,6 @@ pub struct Backend {
7468
inner: Arc<Mutex<HashMap<String, Bytes>>>,
7569
}
7670

77-
impl Backend {
78-
/// Create a builder.
79-
#[deprecated = "Use Builder::default() instead"]
80-
pub fn build() -> Builder {
81-
Builder::default()
82-
}
83-
}
84-
8571
#[async_trait]
8672
impl Accessor for Backend {
8773
fn metadata(&self) -> AccessorMetadata {

src/services/s3/backend.rs

Lines changed: 0 additions & 164 deletions
Original file line numberDiff line numberDiff line change
@@ -680,164 +680,6 @@ impl Builder {
680680
server_side_encryption_customer_key_md5,
681681
})
682682
}
683-
684-
/// Finish the build process and create a new accessor.
685-
#[deprecated = "Use Builder::build() instead"]
686-
pub async fn finish(&mut self) -> Result<Arc<dyn Accessor>> {
687-
info!("backend build started: {:?}", &self);
688-
689-
let root = match &self.root {
690-
// Use "/" as root if user not specified.
691-
None => "/".to_string(),
692-
Some(v) => {
693-
let mut v = v
694-
.split('/')
695-
.filter(|v| !v.is_empty())
696-
.collect::<Vec<&str>>()
697-
.join("/");
698-
if !v.starts_with('/') {
699-
v.insert(0, '/');
700-
}
701-
if !v.ends_with('/') {
702-
v.push('/')
703-
}
704-
v
705-
}
706-
};
707-
info!("backend use root {}", &root);
708-
709-
// Handle endpoint, region and bucket name.
710-
let bucket = match self.bucket.is_empty() {
711-
false => Ok(&self.bucket),
712-
true => Err(other(BackendError::new(
713-
HashMap::from([("bucket".to_string(), "".to_string())]),
714-
anyhow!("bucket is empty"),
715-
))),
716-
}?;
717-
debug!("backend use bucket {}", &bucket);
718-
719-
// Setup error context so that we don't need to construct many times.
720-
let mut context: HashMap<String, String> =
721-
HashMap::from([("bucket".to_string(), bucket.to_string())]);
722-
723-
let server_side_encryption = match &self.server_side_encryption {
724-
None => None,
725-
Some(v) => Some(v.parse().map_err(|e| {
726-
other(BackendError::new(
727-
context.clone(),
728-
anyhow!("server_side_encryption value {} invalid: {}", v, e),
729-
))
730-
})?),
731-
};
732-
733-
let server_side_encryption_aws_kms_key_id =
734-
match &self.server_side_encryption_aws_kms_key_id {
735-
None => None,
736-
Some(v) => Some(v.parse().map_err(|e| {
737-
other(BackendError::new(
738-
context.clone(),
739-
anyhow!(
740-
"server_side_encryption_aws_kms_key_id value {} invalid: {}",
741-
v,
742-
e
743-
),
744-
))
745-
})?),
746-
};
747-
748-
let server_side_encryption_customer_algorithm =
749-
match &self.server_side_encryption_customer_algorithm {
750-
None => None,
751-
Some(v) => Some(v.parse().map_err(|e| {
752-
other(BackendError::new(
753-
context.clone(),
754-
anyhow!(
755-
"server_side_encryption_customer_algorithm value {} invalid: {}",
756-
v,
757-
e
758-
),
759-
))
760-
})?),
761-
};
762-
763-
let server_side_encryption_customer_key = match &self.server_side_encryption_customer_key {
764-
None => None,
765-
Some(v) => Some(v.parse().map_err(|e| {
766-
other(BackendError::new(
767-
context.clone(),
768-
anyhow!(
769-
"server_side_encryption_customer_key value {} invalid: {}",
770-
v,
771-
e
772-
),
773-
))
774-
})?),
775-
};
776-
let server_side_encryption_customer_key_md5 =
777-
match &self.server_side_encryption_customer_key_md5 {
778-
None => None,
779-
Some(v) => Some(v.parse().map_err(|e| {
780-
other(BackendError::new(
781-
context.clone(),
782-
anyhow!(
783-
"server_side_encryption_customer_key_md5 value {} invalid: {}",
784-
v,
785-
e
786-
),
787-
))
788-
})?),
789-
};
790-
791-
let client = HttpClient::new();
792-
793-
let (mut endpoint, region) = self.detect_region(&client, bucket, &context)?;
794-
// Construct endpoint which contains bucket name.
795-
if self.enable_virtual_host_style {
796-
endpoint = endpoint.replace("//", &format!("//{bucket}."))
797-
} else {
798-
write!(endpoint, "/{bucket}").expect("write into string must succeed");
799-
}
800-
context.insert("endpoint".to_string(), endpoint.clone());
801-
context.insert("region".to_string(), region.clone());
802-
debug!("backend use endpoint: {}, region: {}", &endpoint, &region);
803-
804-
let mut signer_builder = Signer::builder();
805-
signer_builder.service("s3");
806-
signer_builder.region(&region);
807-
signer_builder.allow_anonymous();
808-
if self.disable_credential_loader {
809-
signer_builder.credential_loader({
810-
let mut chain = CredentialLoadChain::default();
811-
chain.push(DummyLoader {});
812-
813-
chain
814-
});
815-
}
816-
817-
if let (Some(ak), Some(sk)) = (&self.access_key_id, &self.secret_access_key) {
818-
signer_builder.access_key(ak);
819-
signer_builder.secret_key(sk);
820-
}
821-
822-
let signer = signer_builder
823-
.build()
824-
.map_err(|e| other(BackendError::new(context, e)))?;
825-
826-
info!("backend build finished: {:?}", &self);
827-
Ok(Arc::new(Backend {
828-
root,
829-
endpoint,
830-
signer: Arc::new(signer),
831-
bucket: self.bucket.clone(),
832-
client,
833-
834-
server_side_encryption,
835-
server_side_encryption_aws_kms_key_id,
836-
server_side_encryption_customer_algorithm,
837-
server_side_encryption_customer_key,
838-
server_side_encryption_customer_key_md5,
839-
}))
840-
}
841683
}
842684

843685
/// Backend for s3 services.
@@ -858,12 +700,6 @@ pub struct Backend {
858700
}
859701

860702
impl Backend {
861-
/// Create a new builder for s3.
862-
#[deprecated = "Use Builder::default() instead"]
863-
pub fn build() -> Builder {
864-
Builder::default()
865-
}
866-
867703
pub(crate) fn from_iter(it: impl Iterator<Item = (String, String)>) -> Result<Self> {
868704
let mut builder = Builder::default();
869705

0 commit comments

Comments
 (0)