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 06370cca1 refactor!: Remove stat_has_xxx and list_has_xxx (#6313)
06370cca1 is described below

commit 06370cca1f79faea95c557f39f6b4912592c1153
Author: Xuanwo <[email protected]>
AuthorDate: Wed Jun 18 20:29:46 2025 +0800

    refactor!: Remove stat_has_xxx and list_has_xxx (#6313)
    
    Signed-off-by: Xuanwo <[email protected]>
---
 core/src/services/aliyun_drive/backend.rs     |  5 ----
 core/src/services/alluxio/backend.rs          |  4 ---
 core/src/services/azblob/backend.rs           | 14 ---------
 core/src/services/azdls/backend.rs            | 12 --------
 core/src/services/azfile/backend.rs           | 12 --------
 core/src/services/b2/backend.rs               |  6 ----
 core/src/services/compfs/backend.rs           |  1 -
 core/src/services/cos/backend.rs              | 12 --------
 core/src/services/dbfs/backend.rs             | 11 -------
 core/src/services/dropbox/builder.rs          |  4 ---
 core/src/services/fs/backend.rs               |  2 --
 core/src/services/ftp/backend.rs              |  4 ---
 core/src/services/gcs/backend.rs              | 13 ---------
 core/src/services/gdrive/builder.rs           |  6 ----
 core/src/services/ghac/backend.rs             |  9 ------
 core/src/services/ghac/writer.rs              | 14 ---------
 core/src/services/github/backend.rs           |  4 ---
 core/src/services/hdfs/backend.rs             |  4 ---
 core/src/services/hdfs_native/backend.rs      |  4 ---
 core/src/services/http/backend.rs             |  9 ------
 core/src/services/huggingface/backend.rs      |  4 ---
 core/src/services/ipfs/backend.rs             |  4 ---
 core/src/services/ipmfs/builder.rs            |  2 --
 core/src/services/koofr/backend.rs            |  6 ----
 core/src/services/lakefs/backend.rs           |  5 ----
 core/src/services/memory/backend.rs           |  5 ----
 core/src/services/moka/backend.rs             |  5 ----
 core/src/services/monoiofs/core.rs            |  2 --
 core/src/services/obs/backend.rs              | 11 -------
 core/src/services/onedrive/builder.rs         |  7 -----
 core/src/services/oss/backend.rs              | 15 ----------
 core/src/services/pcloud/backend.rs           |  4 ---
 core/src/services/s3/backend.rs               | 15 ----------
 core/src/services/seafile/backend.rs          |  4 ---
 core/src/services/sftp/backend.rs             |  4 ---
 core/src/services/swift/backend.rs            | 14 ---------
 core/src/services/upyun/backend.rs            |  8 -----
 core/src/services/vercel_artifacts/builder.rs |  9 ------
 core/src/services/vercel_blob/backend.rs      |  8 -----
 core/src/services/webdav/backend.rs           |  8 -----
 core/src/services/webhdfs/backend.rs          |  4 ---
 core/src/services/yandex_disk/backend.rs      |  8 -----
 core/src/types/capability.rs                  | 42 ---------------------------
 43 files changed, 344 deletions(-)

diff --git a/core/src/services/aliyun_drive/backend.rs 
b/core/src/services/aliyun_drive/backend.rs
index 09159749b..ca0d63e3e 100644
--- a/core/src/services/aliyun_drive/backend.rs
+++ b/core/src/services/aliyun_drive/backend.rs
@@ -199,11 +199,6 @@ impl Builder for AliyunDriveBuilder {
                             list: true,
                             list_with_limit: true,
                             shared: true,
-                            stat_has_content_length: true,
-                            stat_has_content_type: true,
-                            list_has_last_modified: true,
-                            list_has_content_length: true,
-                            list_has_content_type: true,
                             ..Default::default()
                         });
 
diff --git a/core/src/services/alluxio/backend.rs 
b/core/src/services/alluxio/backend.rs
index 70970fd8f..01c04cb49 100644
--- a/core/src/services/alluxio/backend.rs
+++ b/core/src/services/alluxio/backend.rs
@@ -146,10 +146,6 @@ impl Builder for AlluxioBuilder {
                             list: true,
 
                             shared: true,
-                            stat_has_content_length: true,
-                            stat_has_last_modified: true,
-                            list_has_content_length: true,
-                            list_has_last_modified: true,
 
                             ..Default::default()
                         });
diff --git a/core/src/services/azblob/backend.rs 
b/core/src/services/azblob/backend.rs
index 5b20ba216..e075272d7 100644
--- a/core/src/services/azblob/backend.rs
+++ b/core/src/services/azblob/backend.rs
@@ -392,15 +392,6 @@ impl Builder for AzblobBuilder {
                             stat: true,
                             stat_with_if_match: true,
                             stat_with_if_none_match: true,
-                            stat_has_cache_control: true,
-                            stat_has_content_length: true,
-                            stat_has_content_type: true,
-                            stat_has_content_encoding: true,
-                            stat_has_content_range: true,
-                            stat_has_etag: true,
-                            stat_has_content_md5: true,
-                            stat_has_last_modified: true,
-                            stat_has_content_disposition: true,
 
                             read: true,
 
@@ -427,11 +418,6 @@ impl Builder for AzblobBuilder {
 
                             list: true,
                             list_with_recursive: true,
-                            list_has_etag: true,
-                            list_has_content_length: true,
-                            list_has_content_md5: true,
-                            list_has_content_type: true,
-                            list_has_last_modified: true,
 
                             presign: self.config.sas_token.is_some(),
                             presign_stat: self.config.sas_token.is_some(),
diff --git a/core/src/services/azdls/backend.rs 
b/core/src/services/azdls/backend.rs
index 176ece6ac..6d11a8aa2 100644
--- a/core/src/services/azdls/backend.rs
+++ b/core/src/services/azdls/backend.rs
@@ -301,15 +301,6 @@ impl Builder for AzdlsBuilder {
                         .set_name(filesystem)
                         .set_native_capability(Capability {
                             stat: true,
-                            stat_has_cache_control: true,
-                            stat_has_content_length: true,
-                            stat_has_content_type: true,
-                            stat_has_content_encoding: true,
-                            stat_has_content_range: true,
-                            stat_has_etag: true,
-                            stat_has_content_md5: true,
-                            stat_has_last_modified: true,
-                            stat_has_content_disposition: true,
 
                             read: true,
 
@@ -323,9 +314,6 @@ impl Builder for AzdlsBuilder {
                             rename: true,
 
                             list: true,
-                            list_has_etag: true,
-                            list_has_content_length: true,
-                            list_has_last_modified: true,
 
                             shared: true,
 
diff --git a/core/src/services/azfile/backend.rs 
b/core/src/services/azfile/backend.rs
index 98980b3dd..b710d6fdd 100644
--- a/core/src/services/azfile/backend.rs
+++ b/core/src/services/azfile/backend.rs
@@ -230,15 +230,6 @@ impl Builder for AzfileBuilder {
                         .set_root(&root)
                         .set_native_capability(Capability {
                             stat: true,
-                            stat_has_cache_control: true,
-                            stat_has_content_length: true,
-                            stat_has_content_type: true,
-                            stat_has_content_encoding: true,
-                            stat_has_content_range: true,
-                            stat_has_etag: true,
-                            stat_has_content_md5: true,
-                            stat_has_last_modified: true,
-                            stat_has_content_disposition: true,
 
                             read: true,
 
@@ -248,9 +239,6 @@ impl Builder for AzfileBuilder {
                             rename: true,
 
                             list: true,
-                            list_has_etag: true,
-                            list_has_last_modified: true,
-                            list_has_content_length: true,
 
                             shared: true,
 
diff --git a/core/src/services/b2/backend.rs b/core/src/services/b2/backend.rs
index 653847837..064e8d15d 100644
--- a/core/src/services/b2/backend.rs
+++ b/core/src/services/b2/backend.rs
@@ -196,9 +196,6 @@ impl Builder for B2Builder {
                         .set_root(&root)
                         .set_native_capability(Capability {
                             stat: true,
-                            stat_has_content_length: true,
-                            stat_has_content_md5: true,
-                            stat_has_content_type: true,
 
                             read: true,
 
@@ -226,9 +223,6 @@ impl Builder for B2Builder {
                             list_with_limit: true,
                             list_with_start_after: true,
                             list_with_recursive: true,
-                            list_has_content_length: true,
-                            list_has_content_md5: true,
-                            list_has_content_type: true,
 
                             presign: true,
                             presign_read: true,
diff --git a/core/src/services/compfs/backend.rs 
b/core/src/services/compfs/backend.rs
index 07eec49e9..a93270e16 100644
--- a/core/src/services/compfs/backend.rs
+++ b/core/src/services/compfs/backend.rs
@@ -95,7 +95,6 @@ impl Builder for CompfsBuilder {
                     .set_root(&root)
                     .set_native_capability(Capability {
                         stat: true,
-                        stat_has_last_modified: true,
 
                         read: true,
 
diff --git a/core/src/services/cos/backend.rs b/core/src/services/cos/backend.rs
index 260a0b98c..8426ef3e7 100644
--- a/core/src/services/cos/backend.rs
+++ b/core/src/services/cos/backend.rs
@@ -229,18 +229,7 @@ impl Builder for CosBuilder {
                             stat: true,
                             stat_with_if_match: true,
                             stat_with_if_none_match: true,
-                            stat_has_cache_control: true,
-                            stat_has_content_length: true,
-                            stat_has_content_type: true,
-                            stat_has_content_encoding: true,
-                            stat_has_content_range: true,
                             stat_with_version: self.config.enable_versioning,
-                            stat_has_etag: true,
-                            stat_has_content_md5: true,
-                            stat_has_last_modified: true,
-                            stat_has_content_disposition: true,
-                            stat_has_version: true,
-                            stat_has_user_metadata: true,
 
                             read: true,
 
@@ -279,7 +268,6 @@ impl Builder for CosBuilder {
                             list_with_recursive: true,
                             list_with_versions: self.config.enable_versioning,
                             list_with_deleted: self.config.enable_versioning,
-                            list_has_content_length: true,
 
                             presign: true,
                             presign_stat: true,
diff --git a/core/src/services/dbfs/backend.rs 
b/core/src/services/dbfs/backend.rs
index c43c1a036..95b232fd8 100644
--- a/core/src/services/dbfs/backend.rs
+++ b/core/src/services/dbfs/backend.rs
@@ -154,15 +154,6 @@ impl Access for DbfsBackend {
             .set_root(&self.core.root)
             .set_native_capability(Capability {
                 stat: true,
-                stat_has_cache_control: true,
-                stat_has_content_length: true,
-                stat_has_content_type: true,
-                stat_has_content_encoding: true,
-                stat_has_content_range: true,
-                stat_has_etag: true,
-                stat_has_content_md5: true,
-                stat_has_last_modified: true,
-                stat_has_content_disposition: true,
 
                 write: true,
                 create_dir: true,
@@ -170,8 +161,6 @@ impl Access for DbfsBackend {
                 rename: true,
 
                 list: true,
-                list_has_last_modified: true,
-                list_has_content_length: true,
 
                 shared: true,
 
diff --git a/core/src/services/dropbox/builder.rs 
b/core/src/services/dropbox/builder.rs
index 12c134508..6c7b624ce 100644
--- a/core/src/services/dropbox/builder.rs
+++ b/core/src/services/dropbox/builder.rs
@@ -186,8 +186,6 @@ impl Builder for DropboxBuilder {
                         .set_root(&root)
                         .set_native_capability(Capability {
                             stat: true,
-                            stat_has_last_modified: true,
-                            stat_has_content_length: true,
 
                             read: true,
 
@@ -199,8 +197,6 @@ impl Builder for DropboxBuilder {
 
                             list: true,
                             list_with_recursive: true,
-                            list_has_last_modified: true,
-                            list_has_content_length: true,
 
                             copy: true,
 
diff --git a/core/src/services/fs/backend.rs b/core/src/services/fs/backend.rs
index 329d4738f..593a00d25 100644
--- a/core/src/services/fs/backend.rs
+++ b/core/src/services/fs/backend.rs
@@ -153,8 +153,6 @@ impl Builder for FsBuilder {
                         .set_root(&root.to_string_lossy())
                         .set_native_capability(Capability {
                             stat: true,
-                            stat_has_content_length: true,
-                            stat_has_last_modified: true,
 
                             read: true,
 
diff --git a/core/src/services/ftp/backend.rs b/core/src/services/ftp/backend.rs
index 9509b2d83..960efee76 100644
--- a/core/src/services/ftp/backend.rs
+++ b/core/src/services/ftp/backend.rs
@@ -167,8 +167,6 @@ impl Builder for FtpBuilder {
             .set_root(&root)
             .set_native_capability(Capability {
                 stat: true,
-                stat_has_content_length: true,
-                stat_has_last_modified: true,
 
                 read: true,
 
@@ -180,8 +178,6 @@ impl Builder for FtpBuilder {
                 create_dir: true,
 
                 list: true,
-                list_has_content_length: true,
-                list_has_last_modified: true,
 
                 shared: true,
 
diff --git a/core/src/services/gcs/backend.rs b/core/src/services/gcs/backend.rs
index 18fd9ff58..fffbae0d0 100644
--- a/core/src/services/gcs/backend.rs
+++ b/core/src/services/gcs/backend.rs
@@ -315,14 +315,6 @@ impl Builder for GcsBuilder {
                             stat: true,
                             stat_with_if_match: true,
                             stat_with_if_none_match: true,
-                            stat_has_etag: true,
-                            stat_has_content_md5: true,
-                            stat_has_content_length: true,
-                            stat_has_content_type: true,
-                            stat_has_content_encoding: true,
-                            stat_has_last_modified: true,
-                            stat_has_user_metadata: true,
-                            stat_has_cache_control: true,
 
                             read: true,
 
@@ -359,11 +351,6 @@ impl Builder for GcsBuilder {
                             list_with_limit: true,
                             list_with_start_after: true,
                             list_with_recursive: true,
-                            list_has_etag: true,
-                            list_has_content_md5: true,
-                            list_has_content_length: true,
-                            list_has_content_type: true,
-                            list_has_last_modified: true,
 
                             presign: true,
                             presign_stat: true,
diff --git a/core/src/services/gdrive/builder.rs 
b/core/src/services/gdrive/builder.rs
index d267ea399..1e6ed8fa4 100644
--- a/core/src/services/gdrive/builder.rs
+++ b/core/src/services/gdrive/builder.rs
@@ -147,16 +147,10 @@ impl Builder for GdriveBuilder {
             .set_root(&root)
             .set_native_capability(Capability {
                 stat: true,
-                stat_has_content_length: true,
-                stat_has_content_type: true,
-                stat_has_last_modified: true,
 
                 read: true,
 
                 list: true,
-                list_has_content_type: true,
-                list_has_content_length: true,
-                list_has_etag: true,
 
                 write: true,
 
diff --git a/core/src/services/ghac/backend.rs 
b/core/src/services/ghac/backend.rs
index 0864ee3e5..b4bcf7f48 100644
--- a/core/src/services/ghac/backend.rs
+++ b/core/src/services/ghac/backend.rs
@@ -182,15 +182,6 @@ impl Builder for GhacBuilder {
                     .set_name(&version)
                     .set_native_capability(Capability {
                         stat: true,
-                        stat_has_cache_control: true,
-                        stat_has_content_length: true,
-                        stat_has_content_type: true,
-                        stat_has_content_encoding: true,
-                        stat_has_content_range: true,
-                        stat_has_etag: true,
-                        stat_has_content_md5: true,
-                        stat_has_last_modified: true,
-                        stat_has_content_disposition: true,
 
                         read: true,
 
diff --git a/core/src/services/ghac/writer.rs b/core/src/services/ghac/writer.rs
index 6252552a0..51bf5d5a7 100644
--- a/core/src/services/ghac/writer.rs
+++ b/core/src/services/ghac/writer.rs
@@ -75,15 +75,6 @@ impl GhacWriter {
                                 stat: true,
                                 stat_with_if_match: true,
                                 stat_with_if_none_match: true,
-                                stat_has_cache_control: true,
-                                stat_has_content_length: true,
-                                stat_has_content_type: true,
-                                stat_has_content_encoding: true,
-                                stat_has_content_range: true,
-                                stat_has_etag: true,
-                                stat_has_content_md5: true,
-                                stat_has_last_modified: true,
-                                stat_has_content_disposition: true,
 
                                 read: true,
 
@@ -107,11 +98,6 @@ impl GhacWriter {
 
                                 list: true,
                                 list_with_recursive: true,
-                                list_has_etag: true,
-                                list_has_content_length: true,
-                                list_has_content_md5: true,
-                                list_has_content_type: true,
-                                list_has_last_modified: true,
 
                                 shared: true,
 
diff --git a/core/src/services/github/backend.rs 
b/core/src/services/github/backend.rs
index e3e01b138..0232a2c00 100644
--- a/core/src/services/github/backend.rs
+++ b/core/src/services/github/backend.rs
@@ -155,8 +155,6 @@ impl Builder for GithubBuilder {
                         .set_root(&root)
                         .set_native_capability(Capability {
                             stat: true,
-                            stat_has_content_length: true,
-                            stat_has_etag: true,
 
                             read: true,
 
@@ -169,8 +167,6 @@ impl Builder for GithubBuilder {
 
                             list: true,
                             list_with_recursive: true,
-                            list_has_content_length: true,
-                            list_has_etag: true,
 
                             shared: true,
 
diff --git a/core/src/services/hdfs/backend.rs 
b/core/src/services/hdfs/backend.rs
index d4adb46d4..bd3275991 100644
--- a/core/src/services/hdfs/backend.rs
+++ b/core/src/services/hdfs/backend.rs
@@ -180,8 +180,6 @@ impl Builder for HdfsBuilder {
                     .set_root(&root)
                     .set_native_capability(Capability {
                         stat: true,
-                        stat_has_content_length: true,
-                        stat_has_last_modified: true,
 
                         read: true,
 
@@ -192,8 +190,6 @@ impl Builder for HdfsBuilder {
                         delete: true,
 
                         list: true,
-                        list_has_content_length: true,
-                        list_has_last_modified: true,
 
                         rename: true,
 
diff --git a/core/src/services/hdfs_native/backend.rs 
b/core/src/services/hdfs_native/backend.rs
index c221655b6..fb515251b 100644
--- a/core/src/services/hdfs_native/backend.rs
+++ b/core/src/services/hdfs_native/backend.rs
@@ -154,8 +154,6 @@ impl Access for HdfsNativeBackend {
             .set_root(&self.root)
             .set_native_capability(Capability {
                 stat: true,
-                stat_has_last_modified: true,
-                stat_has_content_length: true,
 
                 read: true,
 
@@ -166,8 +164,6 @@ impl Access for HdfsNativeBackend {
                 delete: true,
 
                 list: true,
-                list_has_content_length: true,
-                list_has_last_modified: true,
 
                 rename: true,
 
diff --git a/core/src/services/http/backend.rs 
b/core/src/services/http/backend.rs
index 3be5f1b3e..a5e054b84 100644
--- a/core/src/services/http/backend.rs
+++ b/core/src/services/http/backend.rs
@@ -164,15 +164,6 @@ impl Builder for HttpBuilder {
                 stat: true,
                 stat_with_if_match: true,
                 stat_with_if_none_match: true,
-                stat_has_cache_control: true,
-                stat_has_content_length: true,
-                stat_has_content_type: true,
-                stat_has_content_encoding: true,
-                stat_has_content_range: true,
-                stat_has_etag: true,
-                stat_has_content_md5: true,
-                stat_has_last_modified: true,
-                stat_has_content_disposition: true,
 
                 read: true,
 
diff --git a/core/src/services/huggingface/backend.rs 
b/core/src/services/huggingface/backend.rs
index fc868e3e3..fe68e4e33 100644
--- a/core/src/services/huggingface/backend.rs
+++ b/core/src/services/huggingface/backend.rs
@@ -176,15 +176,11 @@ impl Builder for HuggingfaceBuilder {
                     am.set_scheme(Scheme::Huggingface)
                         .set_native_capability(Capability {
                             stat: true,
-                            stat_has_content_length: true,
-                            stat_has_last_modified: true,
 
                             read: true,
 
                             list: true,
                             list_with_recursive: true,
-                            list_has_content_length: true,
-                            list_has_last_modified: true,
 
                             shared: true,
 
diff --git a/core/src/services/ipfs/backend.rs 
b/core/src/services/ipfs/backend.rs
index f44cfe0c2..bfa122d39 100644
--- a/core/src/services/ipfs/backend.rs
+++ b/core/src/services/ipfs/backend.rs
@@ -136,10 +136,6 @@ impl Builder for IpfsBuilder {
             .set_root(&root)
             .set_native_capability(Capability {
                 stat: true,
-                stat_has_content_length: true,
-                stat_has_content_type: true,
-                stat_has_etag: true,
-                stat_has_content_disposition: true,
 
                 read: true,
 
diff --git a/core/src/services/ipmfs/builder.rs 
b/core/src/services/ipmfs/builder.rs
index 98db81434..1284de4e1 100644
--- a/core/src/services/ipmfs/builder.rs
+++ b/core/src/services/ipmfs/builder.rs
@@ -142,7 +142,6 @@ impl Builder for IpmfsBuilder {
             .set_root(&root)
             .set_native_capability(Capability {
                 stat: true,
-                stat_has_content_length: true,
 
                 read: true,
 
@@ -150,7 +149,6 @@ impl Builder for IpmfsBuilder {
                 delete: true,
 
                 list: true,
-                list_has_content_length: true,
 
                 shared: true,
 
diff --git a/core/src/services/koofr/backend.rs 
b/core/src/services/koofr/backend.rs
index c3f790bbf..99b7b8d19 100644
--- a/core/src/services/koofr/backend.rs
+++ b/core/src/services/koofr/backend.rs
@@ -179,9 +179,6 @@ impl Builder for KoofrBuilder {
                         .set_root(&root)
                         .set_native_capability(Capability {
                             stat: true,
-                            stat_has_content_length: true,
-                            stat_has_content_type: true,
-                            stat_has_last_modified: true,
 
                             create_dir: true,
 
@@ -197,9 +194,6 @@ impl Builder for KoofrBuilder {
                             copy: true,
 
                             list: true,
-                            list_has_content_length: true,
-                            list_has_content_type: true,
-                            list_has_last_modified: true,
 
                             shared: true,
 
diff --git a/core/src/services/lakefs/backend.rs 
b/core/src/services/lakefs/backend.rs
index c1fe4af11..732251841 100644
--- a/core/src/services/lakefs/backend.rs
+++ b/core/src/services/lakefs/backend.rs
@@ -179,13 +179,8 @@ impl Builder for LakefsBuilder {
                     am.set_scheme(Scheme::Lakefs)
                         .set_native_capability(Capability {
                             stat: true,
-                            stat_has_content_length: true,
-                            stat_has_content_disposition: true,
-                            stat_has_last_modified: true,
 
                             list: true,
-                            list_has_content_length: true,
-                            list_has_last_modified: true,
 
                             read: true,
                             write: true,
diff --git a/core/src/services/memory/backend.rs 
b/core/src/services/memory/backend.rs
index ccb9cf45b..48f5e07df 100644
--- a/core/src/services/memory/backend.rs
+++ b/core/src/services/memory/backend.rs
@@ -85,11 +85,6 @@ impl MemoryAccessor {
             write_with_content_encoding: true,
             delete: true,
             stat: true,
-            stat_has_cache_control: true,
-            stat_has_content_type: true,
-            stat_has_content_disposition: true,
-            stat_has_content_encoding: true,
-            stat_has_content_length: true,
             list: true,
             list_with_recursive: true,
             shared: false,
diff --git a/core/src/services/moka/backend.rs 
b/core/src/services/moka/backend.rs
index b320d8abb..a685ca12e 100644
--- a/core/src/services/moka/backend.rs
+++ b/core/src/services/moka/backend.rs
@@ -216,11 +216,6 @@ impl MokaAccessor {
             write_with_content_encoding: true,
             delete: true,
             stat: true,
-            stat_has_cache_control: true,
-            stat_has_content_type: true,
-            stat_has_content_disposition: true,
-            stat_has_content_encoding: true,
-            stat_has_content_length: true,
             list: true,
             shared: false,
             ..Default::default()
diff --git a/core/src/services/monoiofs/core.rs 
b/core/src/services/monoiofs/core.rs
index a6115f1f8..0428719cb 100644
--- a/core/src/services/monoiofs/core.rs
+++ b/core/src/services/monoiofs/core.rs
@@ -73,8 +73,6 @@ impl MonoiofsCore {
                     .set_root(&root.to_string_lossy())
                     .set_native_capability(Capability {
                         stat: true,
-                        stat_has_content_length: true,
-                        stat_has_last_modified: true,
 
                         read: true,
 
diff --git a/core/src/services/obs/backend.rs b/core/src/services/obs/backend.rs
index 63525b3a8..25404b49f 100644
--- a/core/src/services/obs/backend.rs
+++ b/core/src/services/obs/backend.rs
@@ -240,16 +240,6 @@ impl Builder for ObsBuilder {
                             stat: true,
                             stat_with_if_match: true,
                             stat_with_if_none_match: true,
-                            stat_has_cache_control: true,
-                            stat_has_content_length: true,
-                            stat_has_content_type: true,
-                            stat_has_content_encoding: true,
-                            stat_has_content_range: true,
-                            stat_has_etag: true,
-                            stat_has_content_md5: true,
-                            stat_has_last_modified: true,
-                            stat_has_content_disposition: true,
-                            stat_has_user_metadata: true,
 
                             read: true,
 
@@ -281,7 +271,6 @@ impl Builder for ObsBuilder {
 
                             list: true,
                             list_with_recursive: true,
-                            list_has_content_length: true,
 
                             presign: true,
                             presign_stat: true,
diff --git a/core/src/services/onedrive/builder.rs 
b/core/src/services/onedrive/builder.rs
index 01255fa2e..73961b771 100644
--- a/core/src/services/onedrive/builder.rs
+++ b/core/src/services/onedrive/builder.rs
@@ -163,9 +163,6 @@ impl Builder for OnedriveBuilder {
 
                 stat: true,
                 stat_with_if_none_match: true,
-                stat_has_content_length: true,
-                stat_has_etag: true,
-                stat_has_last_modified: true,
                 stat_with_version: self.config.enable_versioning,
 
                 delete: true,
@@ -174,10 +171,6 @@ impl Builder for OnedriveBuilder {
                 list: true,
                 list_with_limit: true,
                 list_with_versions: self.config.enable_versioning,
-                list_has_content_length: true,
-                list_has_etag: true,
-                list_has_last_modified: true,
-                list_has_version: self.config.enable_versioning, // same as 
`list_with_versions`?
 
                 shared: true,
 
diff --git a/core/src/services/oss/backend.rs b/core/src/services/oss/backend.rs
index 4ecaf247e..ec6ea73c0 100644
--- a/core/src/services/oss/backend.rs
+++ b/core/src/services/oss/backend.rs
@@ -418,18 +418,7 @@ impl Builder for OssBuilder {
                             stat: true,
                             stat_with_if_match: true,
                             stat_with_if_none_match: true,
-                            stat_has_cache_control: true,
-                            stat_has_content_length: true,
-                            stat_has_content_type: true,
-                            stat_has_content_encoding: true,
-                            stat_has_content_range: true,
                             stat_with_version: self.config.enable_versioning,
-                            stat_has_etag: true,
-                            stat_has_content_md5: true,
-                            stat_has_last_modified: true,
-                            stat_has_content_disposition: true,
-                            stat_has_user_metadata: true,
-                            stat_has_version: true,
 
                             read: true,
 
@@ -473,12 +462,8 @@ impl Builder for OssBuilder {
                             list_with_limit: true,
                             list_with_start_after: true,
                             list_with_recursive: true,
-                            list_has_etag: true,
-                            list_has_content_md5: true,
                             list_with_versions: self.config.enable_versioning,
                             list_with_deleted: self.config.enable_versioning,
-                            list_has_content_length: true,
-                            list_has_last_modified: true,
 
                             presign: true,
                             presign_stat: true,
diff --git a/core/src/services/pcloud/backend.rs 
b/core/src/services/pcloud/backend.rs
index 23638a331..6caaaeb4c 100644
--- a/core/src/services/pcloud/backend.rs
+++ b/core/src/services/pcloud/backend.rs
@@ -173,8 +173,6 @@ impl Builder for PcloudBuilder {
                         .set_root(&root)
                         .set_native_capability(Capability {
                             stat: true,
-                            stat_has_content_length: true,
-                            stat_has_last_modified: true,
 
                             create_dir: true,
 
@@ -187,8 +185,6 @@ impl Builder for PcloudBuilder {
                             copy: true,
 
                             list: true,
-                            list_has_content_length: true,
-                            list_has_last_modified: true,
 
                             shared: true,
 
diff --git a/core/src/services/s3/backend.rs b/core/src/services/s3/backend.rs
index eb7e4c163..df921849b 100644
--- a/core/src/services/s3/backend.rs
+++ b/core/src/services/s3/backend.rs
@@ -909,7 +909,6 @@ impl Builder for S3Builder {
                         .set_name(bucket)
                         .set_native_capability(Capability {
                             stat: true,
-                            stat_has_content_encoding: true,
                             stat_with_if_match: true,
                             stat_with_if_none_match: true,
                             stat_with_if_modified_since: true,
@@ -924,16 +923,6 @@ impl Builder for S3Builder {
                                 .config
                                 .disable_stat_with_override,
                             stat_with_version: self.config.enable_versioning,
-                            stat_has_cache_control: true,
-                            stat_has_content_length: true,
-                            stat_has_content_type: true,
-                            stat_has_content_range: true,
-                            stat_has_etag: true,
-                            stat_has_content_md5: true,
-                            stat_has_last_modified: true,
-                            stat_has_content_disposition: true,
-                            stat_has_user_metadata: true,
-                            stat_has_version: true,
 
                             read: true,
                             read_with_if_match: true,
@@ -982,10 +971,6 @@ impl Builder for S3Builder {
                             list_with_recursive: true,
                             list_with_versions: self.config.enable_versioning,
                             list_with_deleted: self.config.enable_versioning,
-                            list_has_etag: true,
-                            list_has_content_md5: true,
-                            list_has_content_length: true,
-                            list_has_last_modified: true,
 
                             presign: true,
                             presign_stat: true,
diff --git a/core/src/services/seafile/backend.rs 
b/core/src/services/seafile/backend.rs
index 69c924d35..5c1dc21a5 100644
--- a/core/src/services/seafile/backend.rs
+++ b/core/src/services/seafile/backend.rs
@@ -193,8 +193,6 @@ impl Builder for SeafileBuilder {
                         .set_root(&root)
                         .set_native_capability(Capability {
                             stat: true,
-                            stat_has_content_length: true,
-                            stat_has_last_modified: true,
 
                             read: true,
 
@@ -204,8 +202,6 @@ impl Builder for SeafileBuilder {
                             delete: true,
 
                             list: true,
-                            list_has_content_length: true,
-                            list_has_last_modified: true,
 
                             shared: true,
 
diff --git a/core/src/services/sftp/backend.rs 
b/core/src/services/sftp/backend.rs
index 4e3591995..5527dcca3 100644
--- a/core/src/services/sftp/backend.rs
+++ b/core/src/services/sftp/backend.rs
@@ -184,8 +184,6 @@ impl Builder for SftpBuilder {
             .set_scheme(Scheme::Sftp)
             .set_native_capability(Capability {
                 stat: true,
-                stat_has_content_length: true,
-                stat_has_last_modified: true,
 
                 read: true,
 
@@ -197,8 +195,6 @@ impl Builder for SftpBuilder {
 
                 list: true,
                 list_with_limit: true,
-                list_has_content_length: true,
-                list_has_last_modified: true,
 
                 copy: self.config.enable_copy,
                 rename: true,
diff --git a/core/src/services/swift/backend.rs 
b/core/src/services/swift/backend.rs
index 3c8fb536f..f2570c9a0 100644
--- a/core/src/services/swift/backend.rs
+++ b/core/src/services/swift/backend.rs
@@ -160,16 +160,6 @@ impl Builder for SwiftBuilder {
                         .set_root(&root)
                         .set_native_capability(Capability {
                             stat: true,
-                            stat_has_cache_control: true,
-                            stat_has_content_length: true,
-                            stat_has_content_type: true,
-                            stat_has_content_encoding: true,
-                            stat_has_content_range: true,
-                            stat_has_etag: true,
-                            stat_has_content_md5: true,
-                            stat_has_last_modified: true,
-                            stat_has_content_disposition: true,
-                            stat_has_user_metadata: true,
                             read: true,
 
                             write: true,
@@ -180,10 +170,6 @@ impl Builder for SwiftBuilder {
 
                             list: true,
                             list_with_recursive: true,
-                            list_has_content_length: true,
-                            list_has_content_md5: true,
-                            list_has_content_type: true,
-                            list_has_last_modified: true,
 
                             shared: true,
 
diff --git a/core/src/services/upyun/backend.rs 
b/core/src/services/upyun/backend.rs
index c2d2ce9b9..1548bf83d 100644
--- a/core/src/services/upyun/backend.rs
+++ b/core/src/services/upyun/backend.rs
@@ -174,11 +174,6 @@ impl Builder for UpyunBuilder {
                         .set_root(&root)
                         .set_native_capability(Capability {
                             stat: true,
-                            stat_has_content_length: true,
-                            stat_has_content_type: true,
-                            stat_has_content_md5: true,
-                            stat_has_cache_control: true,
-                            stat_has_content_disposition: true,
 
                             create_dir: true,
 
@@ -200,9 +195,6 @@ impl Builder for UpyunBuilder {
 
                             list: true,
                             list_with_limit: true,
-                            list_has_content_length: true,
-                            list_has_content_type: true,
-                            list_has_last_modified: true,
 
                             shared: true,
 
diff --git a/core/src/services/vercel_artifacts/builder.rs 
b/core/src/services/vercel_artifacts/builder.rs
index 37de45d66..298866172 100644
--- a/core/src/services/vercel_artifacts/builder.rs
+++ b/core/src/services/vercel_artifacts/builder.rs
@@ -90,15 +90,6 @@ impl Builder for VercelArtifactsBuilder {
         info.set_scheme(Scheme::VercelArtifacts)
             .set_native_capability(Capability {
                 stat: true,
-                stat_has_cache_control: true,
-                stat_has_content_length: true,
-                stat_has_content_type: true,
-                stat_has_content_encoding: true,
-                stat_has_content_range: true,
-                stat_has_etag: true,
-                stat_has_content_md5: true,
-                stat_has_last_modified: true,
-                stat_has_content_disposition: true,
 
                 read: true,
 
diff --git a/core/src/services/vercel_blob/backend.rs 
b/core/src/services/vercel_blob/backend.rs
index c644be3b2..d4f9f9d37 100644
--- a/core/src/services/vercel_blob/backend.rs
+++ b/core/src/services/vercel_blob/backend.rs
@@ -131,10 +131,6 @@ impl Builder for VercelBlobBuilder {
                         .set_root(&root)
                         .set_native_capability(Capability {
                             stat: true,
-                            stat_has_content_type: true,
-                            stat_has_content_length: true,
-                            stat_has_last_modified: true,
-                            stat_has_content_disposition: true,
 
                             read: true,
 
@@ -147,10 +143,6 @@ impl Builder for VercelBlobBuilder {
 
                             list: true,
                             list_with_limit: true,
-                            list_has_content_type: true,
-                            list_has_content_length: true,
-                            list_has_last_modified: true,
-                            list_has_content_disposition: true,
 
                             shared: true,
 
diff --git a/core/src/services/webdav/backend.rs 
b/core/src/services/webdav/backend.rs
index 5e6f4b9c1..c5588774e 100644
--- a/core/src/services/webdav/backend.rs
+++ b/core/src/services/webdav/backend.rs
@@ -180,10 +180,6 @@ impl Builder for WebdavBuilder {
                     .set_root(&root)
                     .set_native_capability(Capability {
                         stat: true,
-                        stat_has_content_length: true,
-                        stat_has_content_type: true,
-                        stat_has_etag: true,
-                        stat_has_last_modified: true,
 
                         read: true,
 
@@ -198,10 +194,6 @@ impl Builder for WebdavBuilder {
                         rename: true,
 
                         list: true,
-                        list_has_content_length: true,
-                        list_has_content_type: true,
-                        list_has_etag: true,
-                        list_has_last_modified: true,
 
                         // We already support recursive list but some details 
still need to polish.
                         // list_with_recursive: true,
diff --git a/core/src/services/webhdfs/backend.rs 
b/core/src/services/webhdfs/backend.rs
index 0c604bf4c..b805ac3f5 100644
--- a/core/src/services/webhdfs/backend.rs
+++ b/core/src/services/webhdfs/backend.rs
@@ -185,8 +185,6 @@ impl Builder for WebhdfsBuilder {
             .set_root(&root)
             .set_native_capability(Capability {
                 stat: true,
-                stat_has_content_length: true,
-                stat_has_last_modified: true,
 
                 read: true,
 
@@ -198,8 +196,6 @@ impl Builder for WebhdfsBuilder {
                 delete: true,
 
                 list: true,
-                list_has_content_length: true,
-                list_has_last_modified: true,
 
                 shared: true,
 
diff --git a/core/src/services/yandex_disk/backend.rs 
b/core/src/services/yandex_disk/backend.rs
index 510ee2a2a..79b1dcf16 100644
--- a/core/src/services/yandex_disk/backend.rs
+++ b/core/src/services/yandex_disk/backend.rs
@@ -131,10 +131,6 @@ impl Builder for YandexDiskBuilder {
                         .set_root(&root)
                         .set_native_capability(Capability {
                             stat: true,
-                            stat_has_last_modified: true,
-                            stat_has_content_md5: true,
-                            stat_has_content_type: true,
-                            stat_has_content_length: true,
 
                             create_dir: true,
 
@@ -149,10 +145,6 @@ impl Builder for YandexDiskBuilder {
 
                             list: true,
                             list_with_limit: true,
-                            list_has_last_modified: true,
-                            list_has_content_md5: true,
-                            list_has_content_type: true,
-                            list_has_content_length: true,
 
                             shared: true,
 
diff --git a/core/src/types/capability.rs b/core/src/types/capability.rs
index 5dc92f861..2cadeaa0d 100644
--- a/core/src/types/capability.rs
+++ b/core/src/types/capability.rs
@@ -82,28 +82,6 @@ pub struct Capability {
     pub stat_with_override_content_type: bool,
     /// Indicates if versions stat operations are supported.
     pub stat_with_version: bool,
-    /// Indicates whether cache control information is available in stat 
response
-    pub stat_has_cache_control: bool,
-    /// Indicates whether content disposition information is available in stat 
response
-    pub stat_has_content_disposition: bool,
-    /// Indicates whether content length information is available in stat 
response
-    pub stat_has_content_length: bool,
-    /// Indicates whether content MD5 checksum is available in stat response
-    pub stat_has_content_md5: bool,
-    /// Indicates whether content range information is available in stat 
response
-    pub stat_has_content_range: bool,
-    /// Indicates whether content type information is available in stat 
response
-    pub stat_has_content_type: bool,
-    /// Indicates whether content encoding information is available in stat 
response
-    pub stat_has_content_encoding: bool,
-    /// Indicates whether entity tag is available in stat response
-    pub stat_has_etag: bool,
-    /// Indicates whether last modified timestamp is available in stat response
-    pub stat_has_last_modified: bool,
-    /// Indicates whether version information is available in stat response
-    pub stat_has_version: bool,
-    /// Indicates whether user-defined metadata is available in stat response
-    pub stat_has_user_metadata: bool,
 
     /// Indicates if the operator supports read operations.
     pub read: bool,
@@ -189,26 +167,6 @@ pub struct Capability {
     pub list_with_versions: bool,
     /// Indicates if listing with deleted files included is supported.
     pub list_with_deleted: bool,
-    /// Indicates whether cache control information is available in list 
response
-    pub list_has_cache_control: bool,
-    /// Indicates whether content disposition information is available in list 
response
-    pub list_has_content_disposition: bool,
-    /// Indicates whether content length information is available in list 
response
-    pub list_has_content_length: bool,
-    /// Indicates whether content MD5 checksum is available in list response
-    pub list_has_content_md5: bool,
-    /// Indicates whether content range information is available in list 
response
-    pub list_has_content_range: bool,
-    /// Indicates whether content type information is available in list 
response
-    pub list_has_content_type: bool,
-    /// Indicates whether entity tag is available in list response
-    pub list_has_etag: bool,
-    /// Indicates whether last modified timestamp is available in list response
-    pub list_has_last_modified: bool,
-    /// Indicates whether version information is available in list response
-    pub list_has_version: bool,
-    /// Indicates whether user-defined metadata is available in list response
-    pub list_has_user_metadata: bool,
 
     /// Indicates if presigned URL generation is supported.
     pub presign: bool,


Reply via email to