opendal 0.1.8 → 0.1.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (656) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +0 -1
  3. data/Cargo.lock +3448 -0
  4. data/Cargo.toml +1 -1
  5. data/DEPENDENCIES.rust.tsv +31 -31
  6. data/README.md +4 -1
  7. data/Rakefile +0 -7
  8. data/core/CHANGELOG.md +80 -0
  9. data/core/Cargo.lock +495 -599
  10. data/core/Cargo.toml +98 -95
  11. data/core/DEPENDENCIES.rust.tsv +319 -324
  12. data/core/NOTICE +5 -0
  13. data/core/README.md +11 -6
  14. data/core/benches/vs_fs/Cargo.toml +1 -1
  15. data/core/benches/vs_s3/Cargo.toml +1 -1
  16. data/core/core/Cargo.toml +2 -2
  17. data/core/core/LICENSE +201 -0
  18. data/core/core/NOTICE +5 -0
  19. data/core/core/README.md +93 -0
  20. data/core/core/src/blocking/delete.rs +2 -2
  21. data/core/core/src/blocking/list.rs +2 -1
  22. data/core/core/src/blocking/operator.rs +10 -5
  23. data/core/core/src/blocking/read/std_bytes_iterator.rs +2 -1
  24. data/core/core/src/blocking/read/std_reader.rs +2 -1
  25. data/core/core/src/blocking/write/std_writer.rs +1 -1
  26. data/core/core/src/docs/performance/http_optimization.md +9 -1
  27. data/core/core/src/docs/rfcs/7749_http_transporter.md +9 -5
  28. data/core/core/src/layers/mod.rs +6 -1
  29. data/core/core/src/lib.rs +2 -137
  30. data/core/core/src/raw/accessor.rs +23 -21
  31. data/core/core/src/raw/oio/buf/queue_buf.rs +4 -2
  32. data/core/core/src/raw/oio/write/block_write.rs +3 -2
  33. data/core/core/src/raw/operation.rs +5 -5
  34. data/core/core/src/raw/ops.rs +85 -63
  35. data/core/core/src/raw/std_io_util.rs +33 -1
  36. data/core/core/src/services/memory/backend.rs +0 -1
  37. data/core/core/src/services/memory/mod.rs +6 -2
  38. data/core/core/src/services/mod.rs +8 -2
  39. data/core/core/src/types/buffer.rs +4 -4
  40. data/core/core/src/types/builder.rs +15 -17
  41. data/core/core/src/types/copy.rs +3 -3
  42. data/core/core/src/types/entry.rs +3 -1
  43. data/core/core/src/types/error.rs +16 -11
  44. data/core/core/src/types/execute/executors/mod.rs +3 -3
  45. data/core/core/src/types/http_transport/mod.rs +6 -0
  46. data/core/core/src/types/list.rs +5 -6
  47. data/core/core/src/types/operator/info.rs +6 -4
  48. data/core/core/src/types/operator/mod.rs +1 -1
  49. data/core/core/src/types/operator/operator.rs +42 -8
  50. data/core/core/src/types/operator/operator_futures.rs +36 -38
  51. data/core/core/src/types/operator/registry.rs +73 -14
  52. data/core/core/src/types/options.rs +48 -42
  53. data/core/core/src/types/read/reader.rs +2 -1
  54. data/core/core/src/types/write/writer.rs +2 -1
  55. data/core/http-transports/reqwest/Cargo.toml +2 -1
  56. data/core/http-transports/reqwest/LICENSE +201 -0
  57. data/core/http-transports/reqwest/NOTICE +5 -0
  58. data/core/http-transports/reqwest/README.md +37 -9
  59. data/core/http-transports/reqwest/src/lib.rs +30 -51
  60. data/core/layers/async-backtrace/Cargo.toml +3 -2
  61. data/core/layers/async-backtrace/LICENSE +201 -0
  62. data/core/layers/async-backtrace/NOTICE +5 -0
  63. data/core/layers/async-backtrace/README.md +48 -0
  64. data/core/layers/async-backtrace/src/lib.rs +5 -5
  65. data/core/layers/await-tree/Cargo.toml +3 -2
  66. data/core/layers/await-tree/LICENSE +201 -0
  67. data/core/layers/await-tree/NOTICE +5 -0
  68. data/core/layers/await-tree/README.md +48 -0
  69. data/core/layers/await-tree/src/lib.rs +5 -6
  70. data/core/layers/capability-check/Cargo.toml +3 -2
  71. data/core/layers/capability-check/LICENSE +201 -0
  72. data/core/layers/capability-check/NOTICE +5 -0
  73. data/core/layers/capability-check/README.md +48 -0
  74. data/core/layers/capability-check/src/lib.rs +7 -8
  75. data/core/layers/chaos/Cargo.toml +3 -2
  76. data/core/layers/chaos/LICENSE +201 -0
  77. data/core/layers/chaos/NOTICE +5 -0
  78. data/core/layers/chaos/README.md +47 -0
  79. data/core/layers/chaos/src/lib.rs +6 -7
  80. data/core/layers/concurrent-limit/Cargo.toml +3 -2
  81. data/core/layers/concurrent-limit/LICENSE +201 -0
  82. data/core/layers/concurrent-limit/NOTICE +5 -0
  83. data/core/layers/concurrent-limit/README.md +48 -0
  84. data/core/layers/concurrent-limit/src/lib.rs +8 -14
  85. data/core/layers/dtrace/Cargo.toml +3 -2
  86. data/core/layers/dtrace/LICENSE +201 -0
  87. data/core/layers/dtrace/NOTICE +5 -0
  88. data/core/layers/dtrace/README.md +52 -0
  89. data/core/layers/dtrace/src/lib.rs +5 -5
  90. data/core/layers/fastmetrics/Cargo.toml +4 -3
  91. data/core/layers/fastmetrics/LICENSE +201 -0
  92. data/core/layers/fastmetrics/NOTICE +5 -0
  93. data/core/layers/fastmetrics/README.md +47 -0
  94. data/core/layers/fastmetrics/src/lib.rs +4 -4
  95. data/core/layers/fastrace/Cargo.toml +3 -2
  96. data/core/layers/fastrace/LICENSE +201 -0
  97. data/core/layers/fastrace/NOTICE +5 -0
  98. data/core/layers/fastrace/README.md +47 -0
  99. data/core/layers/fastrace/src/lib.rs +5 -5
  100. data/core/layers/foyer/Cargo.toml +3 -2
  101. data/core/layers/foyer/LICENSE +201 -0
  102. data/core/layers/foyer/NOTICE +5 -0
  103. data/core/layers/foyer/README.md +47 -0
  104. data/core/layers/foyer/src/deleter.rs +1 -0
  105. data/core/layers/foyer/src/lib.rs +27 -10
  106. data/core/layers/foyer/src/writer.rs +1 -0
  107. data/core/layers/hotpath/Cargo.toml +4 -3
  108. data/core/layers/hotpath/LICENSE +201 -0
  109. data/core/layers/hotpath/NOTICE +5 -0
  110. data/core/layers/hotpath/README.md +47 -0
  111. data/core/layers/hotpath/src/lib.rs +4 -4
  112. data/core/layers/immutable-index/Cargo.toml +3 -2
  113. data/core/layers/immutable-index/LICENSE +201 -0
  114. data/core/layers/immutable-index/NOTICE +5 -0
  115. data/core/layers/immutable-index/README.md +48 -0
  116. data/core/layers/immutable-index/src/lib.rs +3 -4
  117. data/core/layers/logging/Cargo.toml +3 -2
  118. data/core/layers/logging/LICENSE +201 -0
  119. data/core/layers/logging/NOTICE +5 -0
  120. data/core/layers/logging/README.md +47 -0
  121. data/core/layers/logging/src/lib.rs +11 -11
  122. data/core/layers/metrics/Cargo.toml +4 -3
  123. data/core/layers/metrics/LICENSE +201 -0
  124. data/core/layers/metrics/NOTICE +5 -0
  125. data/core/layers/metrics/README.md +47 -0
  126. data/core/layers/metrics/src/lib.rs +6 -6
  127. data/core/layers/mime-guess/Cargo.toml +3 -2
  128. data/core/layers/mime-guess/LICENSE +201 -0
  129. data/core/layers/mime-guess/NOTICE +5 -0
  130. data/core/layers/mime-guess/README.md +47 -0
  131. data/core/layers/mime-guess/src/lib.rs +13 -17
  132. data/core/layers/observe-metrics-common/Cargo.toml +2 -1
  133. data/core/layers/observe-metrics-common/LICENSE +201 -0
  134. data/core/layers/observe-metrics-common/NOTICE +5 -0
  135. data/core/layers/observe-metrics-common/README.md +27 -0
  136. data/core/layers/observe-metrics-common/src/lib.rs +15 -9
  137. data/core/layers/otelmetrics/Cargo.toml +4 -3
  138. data/core/layers/otelmetrics/LICENSE +201 -0
  139. data/core/layers/otelmetrics/NOTICE +5 -0
  140. data/core/layers/otelmetrics/README.md +47 -0
  141. data/core/layers/otelmetrics/src/lib.rs +4 -4
  142. data/core/layers/oteltrace/Cargo.toml +3 -2
  143. data/core/layers/oteltrace/LICENSE +201 -0
  144. data/core/layers/oteltrace/NOTICE +5 -0
  145. data/core/layers/oteltrace/README.md +48 -0
  146. data/core/layers/oteltrace/src/lib.rs +13 -4
  147. data/core/layers/prometheus/Cargo.toml +4 -3
  148. data/core/layers/prometheus/LICENSE +201 -0
  149. data/core/layers/prometheus/NOTICE +5 -0
  150. data/core/layers/prometheus/README.md +47 -0
  151. data/core/layers/prometheus/src/lib.rs +4 -4
  152. data/core/layers/prometheus-client/Cargo.toml +4 -3
  153. data/core/layers/prometheus-client/LICENSE +201 -0
  154. data/core/layers/prometheus-client/NOTICE +5 -0
  155. data/core/layers/prometheus-client/README.md +48 -0
  156. data/core/layers/prometheus-client/src/lib.rs +4 -4
  157. data/core/layers/retry/Cargo.toml +5 -4
  158. data/core/layers/retry/LICENSE +201 -0
  159. data/core/layers/retry/NOTICE +5 -0
  160. data/core/layers/retry/README.md +50 -0
  161. data/core/layers/retry/src/lib.rs +6 -7
  162. data/core/layers/route/Cargo.toml +4 -3
  163. data/core/layers/route/LICENSE +201 -0
  164. data/core/layers/route/NOTICE +5 -0
  165. data/core/layers/route/README.md +58 -0
  166. data/core/layers/route/src/lib.rs +39 -9
  167. data/core/layers/tail-cut/Cargo.toml +3 -2
  168. data/core/layers/tail-cut/LICENSE +201 -0
  169. data/core/layers/tail-cut/NOTICE +5 -0
  170. data/core/layers/tail-cut/README.md +47 -0
  171. data/core/layers/tail-cut/src/lib.rs +7 -9
  172. data/core/layers/throttle/Cargo.toml +3 -2
  173. data/core/layers/throttle/LICENSE +201 -0
  174. data/core/layers/throttle/NOTICE +5 -0
  175. data/core/layers/throttle/README.md +47 -0
  176. data/core/layers/throttle/src/lib.rs +5 -7
  177. data/core/layers/timeout/Cargo.toml +4 -3
  178. data/core/layers/timeout/LICENSE +201 -0
  179. data/core/layers/timeout/NOTICE +5 -0
  180. data/core/layers/timeout/README.md +50 -0
  181. data/core/layers/timeout/src/lib.rs +9 -10
  182. data/core/layers/tracing/Cargo.toml +3 -2
  183. data/core/layers/tracing/LICENSE +201 -0
  184. data/core/layers/tracing/NOTICE +5 -0
  185. data/core/layers/tracing/README.md +47 -0
  186. data/core/layers/tracing/src/lib.rs +4 -4
  187. data/core/services/aliyun-drive/Cargo.toml +2 -1
  188. data/core/services/aliyun-drive/LICENSE +201 -0
  189. data/core/services/aliyun-drive/NOTICE +5 -0
  190. data/core/services/aliyun-drive/README.md +56 -0
  191. data/core/services/aliyun-drive/src/backend.rs +2 -2
  192. data/core/services/aliyun-drive/src/docs.md +7 -9
  193. data/core/services/aliyun-drive/src/lib.rs +12 -2
  194. data/core/services/aliyun-drive/src/lister.rs +2 -2
  195. data/core/services/alluxio/Cargo.toml +2 -1
  196. data/core/services/alluxio/LICENSE +201 -0
  197. data/core/services/alluxio/NOTICE +5 -0
  198. data/core/services/alluxio/README.md +56 -0
  199. data/core/services/alluxio/src/backend.rs +3 -3
  200. data/core/services/alluxio/src/docs.md +7 -5
  201. data/core/services/alluxio/src/lib.rs +12 -2
  202. data/core/services/azblob/Cargo.toml +6 -5
  203. data/core/services/azblob/LICENSE +201 -0
  204. data/core/services/azblob/NOTICE +5 -0
  205. data/core/services/azblob/README.md +56 -0
  206. data/core/services/azblob/src/backend.rs +3 -3
  207. data/core/services/azblob/src/core.rs +3 -3
  208. data/core/services/azblob/src/docs.md +7 -9
  209. data/core/services/azblob/src/lib.rs +14 -2
  210. data/core/services/azdls/Cargo.toml +6 -5
  211. data/core/services/azdls/LICENSE +201 -0
  212. data/core/services/azdls/NOTICE +5 -0
  213. data/core/services/azdls/README.md +56 -0
  214. data/core/services/azdls/src/backend.rs +3 -3
  215. data/core/services/azdls/src/docs.md +7 -8
  216. data/core/services/azdls/src/lib.rs +12 -2
  217. data/core/services/azdls/src/lister.rs +1 -1
  218. data/core/services/azfile/Cargo.toml +6 -5
  219. data/core/services/azfile/LICENSE +201 -0
  220. data/core/services/azfile/NOTICE +5 -0
  221. data/core/services/azfile/README.md +56 -0
  222. data/core/services/azfile/src/backend.rs +2 -2
  223. data/core/services/azfile/src/docs.md +7 -8
  224. data/core/services/azfile/src/lib.rs +12 -2
  225. data/core/services/azure-common/Cargo.toml +2 -1
  226. data/core/services/azure-common/LICENSE +201 -0
  227. data/core/services/azure-common/NOTICE +5 -0
  228. data/core/services/azure-common/README.md +26 -0
  229. data/core/services/azure-common/src/lib.rs +2 -5
  230. data/core/services/b2/Cargo.toml +2 -1
  231. data/core/services/b2/LICENSE +201 -0
  232. data/core/services/b2/NOTICE +5 -0
  233. data/core/services/b2/README.md +56 -0
  234. data/core/services/b2/src/backend.rs +4 -4
  235. data/core/services/b2/src/docs.md +7 -8
  236. data/core/services/b2/src/lib.rs +9 -3
  237. data/core/services/cacache/Cargo.toml +2 -1
  238. data/core/services/cacache/LICENSE +201 -0
  239. data/core/services/cacache/NOTICE +5 -0
  240. data/core/services/cacache/README.md +56 -0
  241. data/core/services/cacache/src/backend.rs +0 -1
  242. data/core/services/cacache/src/docs.md +7 -4
  243. data/core/services/cacache/src/lib.rs +9 -4
  244. data/core/services/cloudflare-kv/Cargo.toml +2 -1
  245. data/core/services/cloudflare-kv/LICENSE +201 -0
  246. data/core/services/cloudflare-kv/NOTICE +5 -0
  247. data/core/services/cloudflare-kv/README.md +56 -0
  248. data/core/services/cloudflare-kv/src/backend.rs +0 -2
  249. data/core/services/cloudflare-kv/src/docs.md +7 -5
  250. data/core/services/cloudflare-kv/src/lib.rs +9 -3
  251. data/core/services/compfs/Cargo.toml +2 -1
  252. data/core/services/compfs/LICENSE +201 -0
  253. data/core/services/compfs/NOTICE +5 -0
  254. data/core/services/compfs/README.md +58 -0
  255. data/core/services/compfs/src/lib.rs +9 -3
  256. data/core/services/cos/Cargo.toml +5 -4
  257. data/core/services/cos/LICENSE +201 -0
  258. data/core/services/cos/NOTICE +5 -0
  259. data/core/services/cos/README.md +56 -0
  260. data/core/services/cos/src/backend.rs +4 -4
  261. data/core/services/cos/src/docs.md +7 -9
  262. data/core/services/cos/src/lib.rs +12 -2
  263. data/core/services/d1/Cargo.toml +2 -1
  264. data/core/services/d1/LICENSE +201 -0
  265. data/core/services/d1/NOTICE +5 -0
  266. data/core/services/d1/README.md +56 -0
  267. data/core/services/d1/src/docs.md +7 -8
  268. data/core/services/d1/src/lib.rs +9 -3
  269. data/core/services/dashmap/Cargo.toml +2 -1
  270. data/core/services/dashmap/LICENSE +201 -0
  271. data/core/services/dashmap/NOTICE +5 -0
  272. data/core/services/dashmap/README.md +56 -0
  273. data/core/services/dashmap/src/backend.rs +1 -2
  274. data/core/services/dashmap/src/docs.md +7 -4
  275. data/core/services/dashmap/src/lib.rs +9 -4
  276. data/core/services/dbfs/Cargo.toml +2 -1
  277. data/core/services/dbfs/LICENSE +201 -0
  278. data/core/services/dbfs/NOTICE +5 -0
  279. data/core/services/dbfs/README.md +56 -0
  280. data/core/services/dbfs/src/backend.rs +2 -2
  281. data/core/services/dbfs/src/core.rs +1 -1
  282. data/core/services/dbfs/src/docs.md +7 -6
  283. data/core/services/dbfs/src/lib.rs +9 -4
  284. data/core/services/dbfs/src/lister.rs +1 -1
  285. data/core/services/dropbox/Cargo.toml +2 -1
  286. data/core/services/dropbox/LICENSE +201 -0
  287. data/core/services/dropbox/NOTICE +5 -0
  288. data/core/services/dropbox/README.md +56 -0
  289. data/core/services/dropbox/src/docs.md +7 -4
  290. data/core/services/dropbox/src/lib.rs +9 -4
  291. data/core/services/etcd/Cargo.toml +2 -1
  292. data/core/services/etcd/LICENSE +201 -0
  293. data/core/services/etcd/NOTICE +5 -0
  294. data/core/services/etcd/README.md +56 -0
  295. data/core/services/etcd/src/docs.md +7 -10
  296. data/core/services/etcd/src/lib.rs +9 -4
  297. data/core/services/foundationdb/Cargo.toml +2 -1
  298. data/core/services/foundationdb/LICENSE +201 -0
  299. data/core/services/foundationdb/NOTICE +5 -0
  300. data/core/services/foundationdb/README.md +56 -0
  301. data/core/services/foundationdb/src/docs.md +7 -5
  302. data/core/services/foundationdb/src/lib.rs +9 -4
  303. data/core/services/foyer/Cargo.toml +4 -3
  304. data/core/services/foyer/LICENSE +201 -0
  305. data/core/services/foyer/NOTICE +5 -0
  306. data/core/services/foyer/README.md +57 -0
  307. data/core/services/foyer/src/backend.rs +1 -1
  308. data/core/services/foyer/src/docs.md +12 -1
  309. data/core/services/foyer/src/lib.rs +9 -11
  310. data/core/services/fs/Cargo.toml +2 -1
  311. data/core/services/fs/LICENSE +201 -0
  312. data/core/services/fs/NOTICE +5 -0
  313. data/core/services/fs/README.md +56 -0
  314. data/core/services/fs/src/backend.rs +1 -1
  315. data/core/services/fs/src/docs.md +7 -5
  316. data/core/services/fs/src/lib.rs +9 -3
  317. data/core/services/ftp/Cargo.toml +2 -1
  318. data/core/services/ftp/LICENSE +201 -0
  319. data/core/services/ftp/NOTICE +5 -0
  320. data/core/services/ftp/README.md +56 -0
  321. data/core/services/ftp/src/backend.rs +1 -1
  322. data/core/services/ftp/src/docs.md +7 -7
  323. data/core/services/ftp/src/lib.rs +12 -2
  324. data/core/services/ftp/src/lister.rs +1 -1
  325. data/core/services/gcs/Cargo.toml +5 -4
  326. data/core/services/gcs/LICENSE +201 -0
  327. data/core/services/gcs/NOTICE +5 -0
  328. data/core/services/gcs/README.md +56 -0
  329. data/core/services/gcs/src/core.rs +55 -1
  330. data/core/services/gcs/src/docs.md +7 -13
  331. data/core/services/gcs/src/lib.rs +9 -3
  332. data/core/services/gcs/src/writer.rs +5 -12
  333. data/core/services/gdrive/Cargo.toml +2 -1
  334. data/core/services/gdrive/LICENSE +201 -0
  335. data/core/services/gdrive/NOTICE +5 -0
  336. data/core/services/gdrive/README.md +56 -0
  337. data/core/services/gdrive/src/docs.md +8 -5
  338. data/core/services/gdrive/src/lib.rs +12 -2
  339. data/core/services/gdrive/src/lister.rs +6 -6
  340. data/core/services/ghac/Cargo.toml +5 -4
  341. data/core/services/ghac/LICENSE +201 -0
  342. data/core/services/ghac/NOTICE +5 -0
  343. data/core/services/ghac/README.md +56 -0
  344. data/core/services/ghac/src/docs.md +7 -4
  345. data/core/services/ghac/src/lib.rs +12 -2
  346. data/core/services/github/Cargo.toml +2 -1
  347. data/core/services/github/LICENSE +201 -0
  348. data/core/services/github/NOTICE +5 -0
  349. data/core/services/github/README.md +56 -0
  350. data/core/services/github/src/backend.rs +4 -4
  351. data/core/services/github/src/docs.md +7 -8
  352. data/core/services/github/src/lib.rs +12 -2
  353. data/core/services/goosefs/Cargo.toml +4 -3
  354. data/core/services/goosefs/LICENSE +201 -0
  355. data/core/services/goosefs/NOTICE +5 -0
  356. data/core/services/goosefs/README.md +56 -0
  357. data/core/services/goosefs/src/backend.rs +31 -12
  358. data/core/services/goosefs/src/config.rs +1 -1
  359. data/core/services/goosefs/src/core.rs +72 -25
  360. data/core/services/goosefs/src/docs.md +10 -10
  361. data/core/services/goosefs/src/lib.rs +12 -2
  362. data/core/services/goosefs/src/writer.rs +24 -20
  363. data/core/services/goosefs/tests/safe_conditional_put.rs +199 -0
  364. data/core/services/gridfs/Cargo.toml +2 -1
  365. data/core/services/gridfs/LICENSE +201 -0
  366. data/core/services/gridfs/NOTICE +5 -0
  367. data/core/services/gridfs/README.md +56 -0
  368. data/core/services/gridfs/src/docs.md +7 -6
  369. data/core/services/gridfs/src/lib.rs +9 -4
  370. data/core/services/hdfs/Cargo.toml +2 -1
  371. data/core/services/hdfs/LICENSE +201 -0
  372. data/core/services/hdfs/NOTICE +5 -0
  373. data/core/services/hdfs/README.md +58 -0
  374. data/core/services/hdfs/src/backend.rs +1 -1
  375. data/core/services/hdfs/src/docs.md +9 -9
  376. data/core/services/hdfs/src/lib.rs +12 -2
  377. data/core/services/hdfs-native/Cargo.toml +3 -2
  378. data/core/services/hdfs-native/LICENSE +201 -0
  379. data/core/services/hdfs-native/NOTICE +5 -0
  380. data/core/services/hdfs-native/README.md +56 -0
  381. data/core/services/hdfs-native/src/backend.rs +3 -2
  382. data/core/services/hdfs-native/src/docs.md +7 -4
  383. data/core/services/hdfs-native/src/lib.rs +12 -2
  384. data/core/services/hdfs-native/src/writer.rs +1 -1
  385. data/core/services/hf/Cargo.toml +3 -2
  386. data/core/services/hf/LICENSE +201 -0
  387. data/core/services/hf/NOTICE +5 -0
  388. data/core/services/hf/README.md +56 -0
  389. data/core/services/hf/src/backend.rs +11 -9
  390. data/core/services/hf/src/config.rs +1 -1
  391. data/core/services/hf/src/core.rs +12 -12
  392. data/core/services/hf/src/docs.md +11 -12
  393. data/core/services/hf/src/lib.rs +13 -3
  394. data/core/services/hf/src/lister.rs +1 -1
  395. data/core/services/http/Cargo.toml +4 -3
  396. data/core/services/http/LICENSE +201 -0
  397. data/core/services/http/NOTICE +5 -0
  398. data/core/services/http/README.md +56 -0
  399. data/core/services/http/src/backend.rs +1 -1
  400. data/core/services/http/src/docs.md +7 -5
  401. data/core/services/http/src/lib.rs +10 -4
  402. data/core/services/ipfs/Cargo.toml +2 -1
  403. data/core/services/ipfs/LICENSE +201 -0
  404. data/core/services/ipfs/NOTICE +5 -0
  405. data/core/services/ipfs/README.md +56 -0
  406. data/core/services/ipfs/src/backend.rs +2 -2
  407. data/core/services/ipfs/src/docs.md +7 -5
  408. data/core/services/ipfs/src/lib.rs +9 -3
  409. data/core/services/ipmfs/Cargo.toml +2 -1
  410. data/core/services/ipmfs/LICENSE +201 -0
  411. data/core/services/ipmfs/NOTICE +5 -0
  412. data/core/services/ipmfs/README.md +56 -0
  413. data/core/services/ipmfs/src/docs.md +10 -1
  414. data/core/services/ipmfs/src/lib.rs +12 -2
  415. data/core/services/ipmfs/src/lister.rs +2 -2
  416. data/core/services/koofr/Cargo.toml +2 -1
  417. data/core/services/koofr/LICENSE +201 -0
  418. data/core/services/koofr/NOTICE +5 -0
  419. data/core/services/koofr/README.md +56 -0
  420. data/core/services/koofr/src/backend.rs +4 -4
  421. data/core/services/koofr/src/docs.md +7 -7
  422. data/core/services/koofr/src/lib.rs +12 -2
  423. data/core/services/lakefs/Cargo.toml +2 -1
  424. data/core/services/lakefs/LICENSE +201 -0
  425. data/core/services/lakefs/NOTICE +5 -0
  426. data/core/services/lakefs/README.md +56 -0
  427. data/core/services/lakefs/src/backend.rs +5 -5
  428. data/core/services/lakefs/src/docs.md +7 -9
  429. data/core/services/lakefs/src/lib.rs +9 -4
  430. data/core/services/lakefs/src/lister.rs +1 -1
  431. data/core/services/memcached/Cargo.toml +3 -2
  432. data/core/services/memcached/LICENSE +201 -0
  433. data/core/services/memcached/NOTICE +5 -0
  434. data/core/services/memcached/README.md +56 -0
  435. data/core/services/memcached/src/docs.md +7 -8
  436. data/core/services/memcached/src/lib.rs +9 -4
  437. data/core/services/mini_moka/Cargo.toml +2 -1
  438. data/core/services/mini_moka/LICENSE +201 -0
  439. data/core/services/mini_moka/NOTICE +5 -0
  440. data/core/services/mini_moka/README.md +56 -0
  441. data/core/services/mini_moka/src/backend.rs +1 -1
  442. data/core/services/mini_moka/src/docs.md +10 -1
  443. data/core/services/mini_moka/src/lib.rs +9 -4
  444. data/core/services/moka/Cargo.toml +2 -1
  445. data/core/services/moka/LICENSE +201 -0
  446. data/core/services/moka/NOTICE +5 -0
  447. data/core/services/moka/README.md +56 -0
  448. data/core/services/moka/src/backend.rs +1 -2
  449. data/core/services/moka/src/docs.md +7 -7
  450. data/core/services/moka/src/lib.rs +9 -3
  451. data/core/services/mongodb/Cargo.toml +2 -1
  452. data/core/services/mongodb/LICENSE +201 -0
  453. data/core/services/mongodb/NOTICE +5 -0
  454. data/core/services/mongodb/README.md +56 -0
  455. data/core/services/mongodb/src/docs.md +7 -7
  456. data/core/services/mongodb/src/lib.rs +12 -2
  457. data/core/services/monoiofs/Cargo.toml +2 -1
  458. data/core/services/monoiofs/LICENSE +201 -0
  459. data/core/services/monoiofs/NOTICE +5 -0
  460. data/core/services/monoiofs/README.md +58 -0
  461. data/core/services/monoiofs/src/docs.md +7 -4
  462. data/core/services/monoiofs/src/lib.rs +9 -4
  463. data/core/services/mysql/Cargo.toml +2 -1
  464. data/core/services/mysql/LICENSE +201 -0
  465. data/core/services/mysql/NOTICE +5 -0
  466. data/core/services/mysql/README.md +56 -0
  467. data/core/services/mysql/src/docs.md +7 -6
  468. data/core/services/mysql/src/lib.rs +12 -2
  469. data/core/services/obs/Cargo.toml +5 -4
  470. data/core/services/obs/LICENSE +201 -0
  471. data/core/services/obs/NOTICE +5 -0
  472. data/core/services/obs/README.md +56 -0
  473. data/core/services/obs/src/backend.rs +4 -4
  474. data/core/services/obs/src/docs.md +7 -9
  475. data/core/services/obs/src/lib.rs +12 -2
  476. data/core/services/onedrive/Cargo.toml +2 -1
  477. data/core/services/onedrive/LICENSE +201 -0
  478. data/core/services/onedrive/NOTICE +5 -0
  479. data/core/services/onedrive/README.md +56 -0
  480. data/core/services/onedrive/src/docs.md +10 -10
  481. data/core/services/onedrive/src/lib.rs +9 -3
  482. data/core/services/opfs/Cargo.toml +4 -1
  483. data/core/services/opfs/LICENSE +201 -0
  484. data/core/services/opfs/NOTICE +5 -0
  485. data/core/services/opfs/README.md +63 -0
  486. data/core/services/opfs/src/core.rs +2 -0
  487. data/core/services/opfs/src/docs.md +7 -1
  488. data/core/services/opfs/src/lib.rs +11 -2
  489. data/core/services/oss/Cargo.toml +5 -4
  490. data/core/services/oss/LICENSE +201 -0
  491. data/core/services/oss/NOTICE +5 -0
  492. data/core/services/oss/README.md +56 -0
  493. data/core/services/oss/src/backend.rs +4 -4
  494. data/core/services/oss/src/docs.md +10 -22
  495. data/core/services/oss/src/lib.rs +9 -3
  496. data/core/services/pcloud/Cargo.toml +2 -1
  497. data/core/services/pcloud/LICENSE +201 -0
  498. data/core/services/pcloud/NOTICE +5 -0
  499. data/core/services/pcloud/README.md +56 -0
  500. data/core/services/pcloud/src/backend.rs +3 -3
  501. data/core/services/pcloud/src/docs.md +7 -7
  502. data/core/services/pcloud/src/lib.rs +9 -3
  503. data/core/services/persy/Cargo.toml +2 -1
  504. data/core/services/persy/LICENSE +201 -0
  505. data/core/services/persy/NOTICE +5 -0
  506. data/core/services/persy/README.md +56 -0
  507. data/core/services/persy/src/backend.rs +0 -1
  508. data/core/services/persy/src/docs.md +7 -6
  509. data/core/services/persy/src/lib.rs +9 -3
  510. data/core/services/postgresql/Cargo.toml +2 -1
  511. data/core/services/postgresql/LICENSE +201 -0
  512. data/core/services/postgresql/NOTICE +5 -0
  513. data/core/services/postgresql/README.md +56 -0
  514. data/core/services/postgresql/src/docs.md +7 -6
  515. data/core/services/postgresql/src/lib.rs +12 -2
  516. data/core/services/redb/Cargo.toml +2 -1
  517. data/core/services/redb/LICENSE +201 -0
  518. data/core/services/redb/NOTICE +5 -0
  519. data/core/services/redb/README.md +56 -0
  520. data/core/services/redb/src/backend.rs +0 -1
  521. data/core/services/redb/src/docs.md +7 -5
  522. data/core/services/redb/src/lib.rs +9 -3
  523. data/core/services/redis/Cargo.toml +2 -1
  524. data/core/services/redis/LICENSE +201 -0
  525. data/core/services/redis/NOTICE +5 -0
  526. data/core/services/redis/README.md +56 -0
  527. data/core/services/redis/src/docs.md +7 -9
  528. data/core/services/redis/src/lib.rs +9 -4
  529. data/core/services/rocksdb/Cargo.toml +2 -1
  530. data/core/services/rocksdb/LICENSE +201 -0
  531. data/core/services/rocksdb/NOTICE +5 -0
  532. data/core/services/rocksdb/README.md +56 -0
  533. data/core/services/rocksdb/src/backend.rs +0 -1
  534. data/core/services/rocksdb/src/docs.md +7 -5
  535. data/core/services/rocksdb/src/lib.rs +12 -2
  536. data/core/services/s3/Cargo.toml +5 -4
  537. data/core/services/s3/LICENSE +201 -0
  538. data/core/services/s3/NOTICE +5 -0
  539. data/core/services/s3/README.md +56 -0
  540. data/core/services/s3/src/backend.rs +60 -7
  541. data/core/services/s3/src/compatible_services.md +10 -2
  542. data/core/services/s3/src/core.rs +16 -8
  543. data/core/services/s3/src/docs.md +7 -28
  544. data/core/services/s3/src/lib.rs +9 -3
  545. data/core/services/seafile/Cargo.toml +2 -1
  546. data/core/services/seafile/LICENSE +201 -0
  547. data/core/services/seafile/NOTICE +5 -0
  548. data/core/services/seafile/README.md +56 -0
  549. data/core/services/seafile/src/backend.rs +3 -3
  550. data/core/services/seafile/src/docs.md +7 -8
  551. data/core/services/seafile/src/lib.rs +12 -2
  552. data/core/services/sftp/Cargo.toml +2 -1
  553. data/core/services/sftp/LICENSE +201 -0
  554. data/core/services/sftp/NOTICE +5 -0
  555. data/core/services/sftp/README.md +56 -0
  556. data/core/services/sftp/src/backend.rs +2 -2
  557. data/core/services/sftp/src/docs.md +7 -9
  558. data/core/services/sftp/src/lib.rs +9 -4
  559. data/core/services/sled/Cargo.toml +2 -1
  560. data/core/services/sled/LICENSE +201 -0
  561. data/core/services/sled/NOTICE +5 -0
  562. data/core/services/sled/README.md +56 -0
  563. data/core/services/sled/src/backend.rs +0 -1
  564. data/core/services/sled/src/docs.md +7 -4
  565. data/core/services/sled/src/lib.rs +12 -2
  566. data/core/services/sqlite/Cargo.toml +2 -1
  567. data/core/services/sqlite/LICENSE +201 -0
  568. data/core/services/sqlite/NOTICE +5 -0
  569. data/core/services/sqlite/README.md +56 -0
  570. data/core/services/sqlite/src/backend.rs +0 -1
  571. data/core/services/sqlite/src/docs.md +7 -6
  572. data/core/services/sqlite/src/lib.rs +12 -2
  573. data/core/services/surrealdb/Cargo.toml +2 -1
  574. data/core/services/surrealdb/LICENSE +201 -0
  575. data/core/services/surrealdb/NOTICE +5 -0
  576. data/core/services/surrealdb/README.md +56 -0
  577. data/core/services/surrealdb/src/docs.md +8 -10
  578. data/core/services/surrealdb/src/lib.rs +9 -3
  579. data/core/services/swift/Cargo.toml +2 -1
  580. data/core/services/swift/LICENSE +201 -0
  581. data/core/services/swift/NOTICE +5 -0
  582. data/core/services/swift/README.md +56 -0
  583. data/core/services/swift/src/backend.rs +2 -2
  584. data/core/services/swift/src/core.rs +24 -24
  585. data/core/services/swift/src/deleter.rs +1 -1
  586. data/core/services/swift/src/docs.md +7 -6
  587. data/core/services/swift/src/lib.rs +9 -4
  588. data/core/services/swift/src/writer.rs +1 -1
  589. data/core/services/tikv/Cargo.toml +2 -1
  590. data/core/services/tikv/LICENSE +201 -0
  591. data/core/services/tikv/NOTICE +5 -0
  592. data/core/services/tikv/README.md +56 -0
  593. data/core/services/tikv/src/backend.rs +1 -1
  594. data/core/services/tikv/src/docs.md +7 -8
  595. data/core/services/tikv/src/lib.rs +12 -2
  596. data/core/services/tos/Cargo.toml +5 -4
  597. data/core/services/tos/LICENSE +201 -0
  598. data/core/services/tos/NOTICE +5 -0
  599. data/core/services/tos/README.md +56 -0
  600. data/core/services/tos/src/docs.md +7 -10
  601. data/core/services/tos/src/lib.rs +9 -3
  602. data/core/services/upyun/Cargo.toml +2 -1
  603. data/core/services/upyun/LICENSE +201 -0
  604. data/core/services/upyun/NOTICE +5 -0
  605. data/core/services/upyun/README.md +56 -0
  606. data/core/services/upyun/src/backend.rs +3 -3
  607. data/core/services/upyun/src/docs.md +7 -7
  608. data/core/services/upyun/src/lib.rs +9 -4
  609. data/core/services/vercel-artifacts/Cargo.toml +2 -1
  610. data/core/services/vercel-artifacts/LICENSE +201 -0
  611. data/core/services/vercel-artifacts/NOTICE +5 -0
  612. data/core/services/vercel-artifacts/README.md +56 -0
  613. data/core/services/vercel-artifacts/src/docs.md +7 -7
  614. data/core/services/vercel-artifacts/src/lib.rs +11 -3
  615. data/core/services/vercel-blob/Cargo.toml +2 -1
  616. data/core/services/vercel-blob/LICENSE +201 -0
  617. data/core/services/vercel-blob/NOTICE +5 -0
  618. data/core/services/vercel-blob/README.md +56 -0
  619. data/core/services/vercel-blob/src/backend.rs +2 -2
  620. data/core/services/vercel-blob/src/docs.md +7 -5
  621. data/core/services/vercel-blob/src/lib.rs +12 -2
  622. data/core/services/webdav/Cargo.toml +2 -1
  623. data/core/services/webdav/LICENSE +201 -0
  624. data/core/services/webdav/NOTICE +5 -0
  625. data/core/services/webdav/README.md +56 -0
  626. data/core/services/webdav/src/backend.rs +1 -1
  627. data/core/services/webdav/src/docs.md +7 -7
  628. data/core/services/webdav/src/lib.rs +12 -2
  629. data/core/services/webhdfs/Cargo.toml +2 -1
  630. data/core/services/webhdfs/LICENSE +201 -0
  631. data/core/services/webhdfs/NOTICE +5 -0
  632. data/core/services/webhdfs/README.md +56 -0
  633. data/core/services/webhdfs/src/docs.md +11 -9
  634. data/core/services/webhdfs/src/lib.rs +12 -2
  635. data/core/services/yandex-disk/Cargo.toml +2 -1
  636. data/core/services/yandex-disk/LICENSE +201 -0
  637. data/core/services/yandex-disk/NOTICE +5 -0
  638. data/core/services/yandex-disk/README.md +56 -0
  639. data/core/services/yandex-disk/src/backend.rs +2 -2
  640. data/core/services/yandex-disk/src/docs.md +7 -5
  641. data/core/services/yandex-disk/src/lib.rs +9 -3
  642. data/core/src/lib.rs +30 -4
  643. data/core/testkit/Cargo.toml +5 -4
  644. data/core/testkit/LICENSE +201 -0
  645. data/core/testkit/NOTICE +5 -0
  646. data/core/testkit/README.md +25 -0
  647. data/core/testkit/src/lib.rs +4 -2
  648. data/core/testkit/src/read.rs +12 -13
  649. data/core/testkit/src/write.rs +12 -13
  650. data/core/tests/behavior/async_list.rs +2 -2
  651. data/core/tests/behavior/async_presign.rs +4 -4
  652. data/core/tests/behavior/async_stat.rs +1 -1
  653. data/core/tests/behavior/async_write.rs +1 -1
  654. data/core/users.md +2 -0
  655. data/opendal.gemspec +5 -1
  656. metadata +283 -2
data/Cargo.toml CHANGED
@@ -25,7 +25,7 @@ homepage = "https://opendal.apache.org/"
25
25
  license = "Apache-2.0"
26
26
  repository = "https://github.com/apache/opendal"
27
27
  rust-version = "1.91"
28
- version = "0.1.8"
28
+ version = "0.1.9"
29
29
 
30
30
  [lib]
31
31
  crate-type = ["cdylib"]
@@ -17,7 +17,7 @@ block-buffer@0.10.4 X X
17
17
  block-buffer@0.12.1 X X
18
18
  block-padding@0.3.3 X X
19
19
  bumpalo@3.20.3 X X
20
- bytes@1.12.0 X
20
+ bytes@1.12.1 X
21
21
  cbc@0.1.2 X X
22
22
  cc@1.2.66 X X
23
23
  cexpr@0.6.0 X X
@@ -102,8 +102,8 @@ ipnet@2.12.0 X X
102
102
  itertools@0.13.0 X X
103
103
  itertools@0.14.0 X X
104
104
  itoa@1.0.18 X X
105
- jiff@0.2.31 X X
106
- jiff-tzdb@0.1.7 X X
105
+ jiff@0.2.32 X X
106
+ jiff-tzdb@0.1.8 X X
107
107
  jiff-tzdb-platform@0.1.3 X X
108
108
  jni@0.22.4 X X
109
109
  jni-macros@0.22.4 X X
@@ -125,40 +125,40 @@ magnus@0.8.2 X
125
125
  magnus-macros@0.8.0 X
126
126
  md-5@0.11.0 X X
127
127
  mea@0.6.4 X
128
- memchr@2.8.2 X X
128
+ memchr@2.8.3 X X
129
129
  minimal-lexical@0.2.1 X X
130
130
  mio@1.2.1 X
131
131
  nom@7.1.3 X
132
132
  nonzero_ext@0.3.0 X
133
133
  num-bigint-dig@0.8.6 X X
134
134
  num-integer@0.1.46 X X
135
- num-iter@0.1.45 X X
135
+ num-iter@0.1.46 X X
136
136
  num-traits@0.2.19 X X
137
137
  once_cell@1.21.4 X X
138
- opendal@0.58.0 X
139
- opendal-core@0.58.0 X
140
- opendal-http-transport-reqwest@0.58.0 X
141
- opendal-layer-concurrent-limit@0.58.0 X
142
- opendal-layer-logging@0.58.0 X
143
- opendal-layer-retry@0.58.0 X
144
- opendal-layer-throttle@0.58.0 X
145
- opendal-layer-timeout@0.58.0 X
146
- opendal-ruby@0.1.8 X
147
- opendal-service-azblob@0.58.0 X
148
- opendal-service-azdls@0.58.0 X
149
- opendal-service-azfile@0.58.0 X
150
- opendal-service-azure-common@0.58.0 X
151
- opendal-service-cos@0.58.0 X
152
- opendal-service-fs@0.58.0 X
153
- opendal-service-gcs@0.58.0 X
154
- opendal-service-ghac@0.58.0 X
155
- opendal-service-http@0.58.0 X
156
- opendal-service-ipmfs@0.58.0 X
157
- opendal-service-obs@0.58.0 X
158
- opendal-service-oss@0.58.0 X
159
- opendal-service-s3@0.58.0 X
160
- opendal-service-webdav@0.58.0 X
161
- opendal-service-webhdfs@0.58.0 X
138
+ opendal@0.58.1 X
139
+ opendal-core@0.58.1 X
140
+ opendal-http-transport-reqwest@0.58.1 X
141
+ opendal-layer-concurrent-limit@0.58.1 X
142
+ opendal-layer-logging@0.58.1 X
143
+ opendal-layer-retry@0.58.1 X
144
+ opendal-layer-throttle@0.58.1 X
145
+ opendal-layer-timeout@0.58.1 X
146
+ opendal-ruby@0.1.9 X
147
+ opendal-service-azblob@0.58.1 X
148
+ opendal-service-azdls@0.58.1 X
149
+ opendal-service-azfile@0.58.1 X
150
+ opendal-service-azure-common@0.58.1 X
151
+ opendal-service-cos@0.58.1 X
152
+ opendal-service-fs@0.58.1 X
153
+ opendal-service-gcs@0.58.1 X
154
+ opendal-service-ghac@0.58.1 X
155
+ opendal-service-http@0.58.1 X
156
+ opendal-service-ipmfs@0.58.1 X
157
+ opendal-service-obs@0.58.1 X
158
+ opendal-service-oss@0.58.1 X
159
+ opendal-service-s3@0.58.1 X
160
+ opendal-service-webdav@0.58.1 X
161
+ opendal-service-webhdfs@0.58.1 X
162
162
  openssl-probe@0.2.1 X X
163
163
  ordered-multimap@0.7.3 X
164
164
  parking_lot@0.12.5 X X
@@ -219,7 +219,7 @@ rustls-pki-types@1.15.0 X X
219
219
  rustls-platform-verifier@0.7.0 X X
220
220
  rustls-platform-verifier-android@0.1.1 X X
221
221
  rustls-webpki@0.103.13 X
222
- rustversion@1.0.22 X X
222
+ rustversion@1.0.23 X X
223
223
  ryu@1.0.23 X X
224
224
  salsa20@0.10.2 X X
225
225
  same-file@1.0.6 X X
@@ -303,7 +303,7 @@ writeable@0.6.3 X
303
303
  xattr@1.6.1 X X
304
304
  yoke@0.8.3 X
305
305
  yoke-derive@0.8.2 X
306
- zerocopy@0.8.53 X X X
306
+ zerocopy@0.8.54 X X X
307
307
  zerofrom@0.1.8 X
308
308
  zerofrom-derive@0.1.7 X
309
309
  zeroize@1.9.0 X X
data/README.md CHANGED
@@ -7,7 +7,10 @@ OpenDAL's Ruby [gem](https://rubygems.org/gems/opendal): access S3, GCS, Azure B
7
7
 
8
8
  ![](https://github.com/apache/opendal/assets/5351546/87bbf6e5-f19e-449a-b368-3e283016c887)
9
9
 
10
- > **Note**: This binding has its own independent version number, which may differ from the Rust core version. When checking for updates or compatibility, always refer to this binding's version rather than the core version.
10
+ We release the OpenDAL Ruby binding independently of the
11
+ [`opendal` crate](https://crates.io/crates/opendal) (Rust core). For updates
12
+ and compatibility, use the Ruby binding version instead of the `opendal` crate
13
+ version.
11
14
 
12
15
  ## Useful Links
13
16
 
data/Rakefile CHANGED
@@ -123,13 +123,6 @@ end
123
123
  directory "lib"
124
124
 
125
125
  extension_sources = FileList["Cargo.toml", "build.rs", "src/**/*.rs"]
126
- # CargoBuilder invokes `cargo rustc --locked`, but Cargo.lock is not tracked
127
- # for this binding. Model it as a generated file so Rake creates it only for
128
- # tasks that need the native extension build.
129
- file "Cargo.lock" => "Cargo.toml" do
130
- sh ENV.fetch("CARGO", "cargo"), "generate-lockfile", "--manifest-path", "Cargo.toml"
131
- end
132
-
133
126
  file EXTENSION_PATH => ["lib", "Cargo.lock", *extension_sources] do
134
127
  original_verbose = Gem.configuration.verbose
135
128
  # `:loud` enables RubyGems' highest verbosity and prints the exact Cargo
data/core/CHANGELOG.md CHANGED
@@ -7,6 +7,86 @@ and this project adheres to [Semantic Versioning](https://semver.org/).
7
7
 
8
8
  <!-- Release notes generated with: gh release create v_draft --generate-notes --draft -->
9
9
 
10
+ ## [v0.58.1] - 2026-07-27
11
+
12
+ ### Added
13
+ * feat(bindings/python): add from_uri constructor for Operator and AsyncOperator by @chitralverma in https://github.com/apache/opendal/pull/7869
14
+ * feat(core): enable presign delete by @anandubey in https://github.com/apache/opendal/pull/7386
15
+ * feat(core): expose registered schemes via OperatorRegistry::schemes by @chitralverma in https://github.com/apache/opendal/pull/7908
16
+ * feat(binding/go): Add Copier by @FrankYang0529 in https://github.com/apache/opendal/pull/7732
17
+ * feat(binding/cpp): add retry and timeout layer to cpp binding by @dentiny in https://github.com/apache/opendal/pull/7915
18
+ * feat(integrations/parquet): upgrade Arrow and Parquet to 59 by @Xuanwo in https://github.com/apache/opendal/pull/7934
19
+ * feat(bindings/python): typed service configs via TypedDict by @chitralverma in https://github.com/apache/opendal/pull/7937
20
+ * feat(core): not translate to "interrupted" std IO error by @dentiny in https://github.com/apache/opendal/pull/7940
21
+ * feat(bindings/python): add TimeoutLayer by @chitralverma in https://github.com/apache/opendal/pull/7963
22
+
23
+ ### Changed
24
+ * refactor(bindings/python): split layers into a package for extensibility by @chitralverma in https://github.com/apache/opendal/pull/7878
25
+
26
+ ### Fixed
27
+ * fix(bindings/python): validate RetryLayer numeric inputs by @chitralverma in https://github.com/apache/opendal/pull/7879
28
+ * fix(integrations/dav-server): depend only on opendal-core by @ngg in https://github.com/apache/opendal/pull/7876
29
+ * fix(services/s3): encode version id for stat and read by @QuakeWang in https://github.com/apache/opendal/pull/7886
30
+ * fix(bindings/ruby): release ruby source package include Cargo.lock by @erickguan in https://github.com/apache/opendal/pull/7891
31
+ * fix: CI prints clippy version and clippy fix by @erickguan in https://github.com/apache/opendal/pull/7895
32
+ * fix(s3): set content length for copy object by @ByteBaker in https://github.com/apache/opendal/pull/7884
33
+ * fix(bindings/python): enable hdfs-native on arm by @chitralverma in https://github.com/apache/opendal/pull/7911
34
+ * fix(goosefs): pin goosefs SDK by @erickguan in https://github.com/apache/opendal/pull/7917
35
+ * fix(bindings/java): incorrect Java declarations by @robd003 in https://github.com/apache/opendal/pull/7906
36
+ * fix: defer default reqwest client initialization by @Xuanwo in https://github.com/apache/opendal/pull/7925
37
+ * fix(dev): sync parquet release version to 0.9.0 by @chitralverma in https://github.com/apache/opendal/pull/7936
38
+ * fix(services/gcs): stop double-encoding object paths in writer by @chitralverma in https://github.com/apache/opendal/pull/7927
39
+ * Revert "fix(services/gcs): stop double-encoding object paths in writer" by @erickguan in https://github.com/apache/opendal/pull/7943
40
+ * fix(services/gcs): encode object paths exactly once by @Xuanwo in https://github.com/apache/opendal/pull/7947
41
+ * fix(integrations/dav-server): improve WebDAV handling by @ngg in https://github.com/apache/opendal/pull/7882
42
+
43
+ ### Docs
44
+ * docs(python): fix broken Python API reference links (404) by @chitralverma in https://github.com/apache/opendal/pull/7872
45
+ * docs(python): fix duplicated headings on layers and types API pages by @chitralverma in https://github.com/apache/opendal/pull/7880
46
+ * doc: use plain prose and active tone for bindings by @erickguan in https://github.com/apache/opendal/pull/7902
47
+ * doc: polish website layout and consistency by @erickguan in https://github.com/apache/opendal/pull/7907
48
+ * docs(website): add publications page for papers using OpenDAL by @Shaurya2k06 in https://github.com/apache/opendal/pull/7914
49
+ * docs: clarify default HTTP transport ownership by @Xuanwo in https://github.com/apache/opendal/pull/7924
50
+ * docs: treat release candidates as tag-bound by @Xuanwo in https://github.com/apache/opendal/pull/7874
51
+ * docs: polish inline documentations by @erickguan in https://github.com/apache/opendal/pull/7930
52
+ * docs: correct layer behavior descriptions by @erickguan in https://github.com/apache/opendal/pull/7932
53
+ * docs(python): migrate MkDocs setup to Zensical by @chitralverma in https://github.com/apache/opendal/pull/7951
54
+ * doc(website): polish vote template by @erickguan in https://github.com/apache/opendal/pull/7953
55
+ * docs: add READMEs for split crates by @Xuanwo in https://github.com/apache/opendal/pull/7961
56
+ * docs: align Rust crate and API docs by @Xuanwo in https://github.com/apache/opendal/pull/7969
57
+
58
+ ### CI
59
+ * ci: include http transports in rust release plan by @Xuanwo in https://github.com/apache/opendal/pull/7901
60
+ * ci: upgrade nodejs release to npm 12 by @Xuanwo in https://github.com/apache/opendal/pull/7900
61
+ * fix(ci): use NuGet login action instead of manual login nuget by @Fatorin in https://github.com/apache/opendal/pull/7903
62
+ * ci: Fix Haskell CI cabal index update by @dentiny in https://github.com/apache/opendal/pull/7941
63
+ * ci: fix python armhf release by excluding services-goosefs by @erickguan in https://github.com/apache/opendal/pull/7950
64
+ * ci: use trusted publishing for Rust releases by @Xuanwo in https://github.com/apache/opendal/pull/7964
65
+
66
+ ### Chore
67
+ * chore(deps): bump bytes from 1.12.0 to 1.12.1 in /core in the http-serialization-utils group across 1 directory by @dependabot[bot] in https://github.com/apache/opendal/pull/7892
68
+ * chore(deps): bump the others group across 1 directory with 6 updates by @dependabot[bot] in https://github.com/apache/opendal/pull/7893
69
+ * chore(deps): upgrade hdfs-native to 0.14 by @chitralverma in https://github.com/apache/opendal/pull/7910
70
+ * chore(goosefs): bump goosefs-sdk to 0.1.8 by @XuQianJin-Stars in https://github.com/apache/opendal/pull/7929
71
+ * chore: include license and notice files in published crates by @ankane in https://github.com/apache/opendal/pull/7931
72
+ * chore(deps): upgrade object_store to 0.14.1 by @Xuanwo in https://github.com/apache/opendal/pull/7935
73
+ * chore(deps): bump cc to 1.4.0 by @erickguan in https://github.com/apache/opendal/pull/7958
74
+ * chore: Update package description for parquet integration by @tisonkun in https://github.com/apache/opendal/pull/7960
75
+ * chore(deps): bump anyhow from 1.0.103 to 1.0.104 in /core in the logs-errors-checksums group across 1 directory by @dependabot[bot] in https://github.com/apache/opendal/pull/7956
76
+ * chore(deps): bump the others group across 1 directory with 7 updates by @dependabot[bot] in https://github.com/apache/opendal/pull/7959
77
+ * chore(deps): bump the async-runtime group across 1 directory with 3 updates by @dependabot[bot] in https://github.com/apache/opendal/pull/7955
78
+ * chore(deps): bump tokio from 1.52.3 to 1.53.1 in /bindings/ruby by @dependabot[bot] in https://github.com/apache/opendal/pull/7965
79
+ * chore(deps): bump dependencies by @erickguan in https://github.com/apache/opendal/pull/7970
80
+
81
+ ### New Contributors
82
+ * @anandubey made their first contribution in https://github.com/apache/opendal/pull/7386
83
+ * @ByteBaker made their first contribution in https://github.com/apache/opendal/pull/7884
84
+ * @Shaurya2k06 made their first contribution in https://github.com/apache/opendal/pull/7914
85
+ * @robd003 made their first contribution in https://github.com/apache/opendal/pull/7906
86
+ * @ankane made their first contribution in https://github.com/apache/opendal/pull/7931
87
+
88
+ **Full Changelog**: https://github.com/apache/opendal/compare/v0.58.0...v0.58.1
89
+
10
90
  ## [v0.58.0] - 2026-07-07
11
91
 
12
92
  ### Breaking Changes