This is an automated email from the ASF dual-hosted git repository.
github-bot pushed a commit to branch gh-pages
in repository https://gitbox.apache.org/repos/asf/incubator-opendal.git
The following commit(s) were added to refs/heads/gh-pages by this push:
new 30a75eff deploy: fa9e5d1b07475e100503200f33fc6bc2250ddff2
30a75eff is described below
commit 30a75effba6392454a29a051b14230b60333524c
Author: Xuanwo <[email protected]>
AuthorDate: Sun Apr 23 10:16:32 2023 +0000
deploy: fa9e5d1b07475e100503200f33fc6bc2250ddff2
---
404.html | 4 +-
assets/js/ae4554eb.3fc148e6.js | 1 -
assets/js/ae4554eb.94cb746e.js | 1 +
assets/js/c377a04b.0a5cb9f9.js | 1 -
assets/js/c377a04b.73c42b21.js | 1 +
...e~main.0a0c2b17.js => runtime~main.ca29ba4c.js} | 2 +-
blog/archive/index.html | 4 +-
blog/index.html | 4 +-
blog/opendal-entered-apache-incubator/index.html | 4 +-
blog/tags/announcement/index.html | 4 +-
blog/tags/index.html | 4 +-
docs/index.html | 6 +-
docs/nodejs/classes/BlockingLister.html | 4 +-
docs/nodejs/classes/Entry.html | 4 +-
docs/nodejs/classes/Lister.html | 4 +-
docs/nodejs/classes/Metadata.html | 18 +++---
docs/nodejs/classes/Operator.html | 56 ++++++++---------
docs/nodejs/interfaces/PresignedRequest.html | 8 +--
docs/python/opendal.html | 30 ++++-----
docs/python/search.js | 2 +-
docs/rust/opendal/docs/rfcs/index.html | 4 +-
.../docs/rfcs/rfc_2083_writer_sink_api/index.html | 73 ++++++++++++++++++++++
.../rfcs/rfc_2083_writer_sink_api/sidebar-items.js | 1 +
docs/rust/opendal/docs/rfcs/sidebar-items.js | 2 +-
docs/rust/search-index.js | 2 +-
docs/rust/src/opendal/docs/rfcs/mod.rs.html | 6 ++
docs/vision/index.html | 6 +-
index.html | 4 +-
28 files changed, 170 insertions(+), 90 deletions(-)
diff --git a/404.html b/404.html
index cb93ea14..1d2c233b 100644
--- a/404.html
+++ b/404.html
@@ -5,13 +5,13 @@
<meta name="generator" content="Docusaurus v2.3.1">
<title data-rh="true">Page Not Found | Apache OpenDAL</title><meta
data-rh="true" name="viewport"
content="width=device-width,initial-scale=1"><meta data-rh="true"
name="twitter:card" content="summary_large_image"><meta data-rh="true"
property="og:url" content="https://opendal.apache.org/404.html"><meta
data-rh="true" name="docusaurus_locale" content="en"><meta data-rh="true"
name="docusaurus_tag" content="default"><meta data-rh="true"
name="docsearch:language" content="en"><meta data-rh [...]
<link rel="alternate" type="application/atom+xml" href="/blog/atom.xml"
title="Apache OpenDAL Atom Feed"><link rel="stylesheet"
href="/assets/css/styles.8610ae2e.css">
-<link rel="preload" href="/assets/js/runtime~main.0a0c2b17.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.ca29ba4c.js" as="script">
<link rel="preload" href="/assets/js/main.5b9603d6.js" as="script">
</head>
<body class="navigation-with-keyboard">
<script>!function(){function
t(t){document.documentElement.setAttribute("data-theme",t)}var e=function(){var
t=null;try{t=localStorage.getItem("theme")}catch(t){}return
t}();t(null!==e?e:"light")}()</script><div id="__docusaurus">
<div role="region" aria-label="Skip to main content"><a
class="skipToContent_fXgn" href="#docusaurus_skipToContent_fallback">Skip to
main content</a></div><nav aria-label="Main" class="navbar
navbar--fixed-top"><div class="navbar__inner"><div
class="navbar__items"><button aria-label="Toggle navigation bar"
aria-expanded="false" class="navbar__toggle clean-btn" type="button"><svg
width="30" height="30" viewBox="0 0 30 30" aria-hidden="true"><path
stroke="currentColor" stroke-linecap="roun [...]
-<script src="/assets/js/runtime~main.0a0c2b17.js"></script>
+<script src="/assets/js/runtime~main.ca29ba4c.js"></script>
<script src="/assets/js/main.5b9603d6.js"></script>
</body>
</html>
\ No newline at end of file
diff --git a/assets/js/ae4554eb.3fc148e6.js b/assets/js/ae4554eb.3fc148e6.js
deleted file mode 100644
index 725930ba..00000000
--- a/assets/js/ae4554eb.3fc148e6.js
+++ /dev/null
@@ -1 +0,0 @@
-"use
strict";(self.webpackChunkopendal_website=self.webpackChunkopendal_website||[]).push([[983],{3905:(e,t,r)=>{r.d(t,{Zo:()=>d,kt:()=>f});var
a=r(7294);function n(e,t,r){return t in
e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function
o(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var
a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return
Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,a)}retur
[...]
\ No newline at end of file
diff --git a/assets/js/ae4554eb.94cb746e.js b/assets/js/ae4554eb.94cb746e.js
new file mode 100644
index 00000000..5118aff7
--- /dev/null
+++ b/assets/js/ae4554eb.94cb746e.js
@@ -0,0 +1 @@
+"use
strict";(self.webpackChunkopendal_website=self.webpackChunkopendal_website||[]).push([[983],{3905:(e,t,r)=>{r.d(t,{Zo:()=>d,kt:()=>f});var
a=r(7294);function n(e,t,r){return t in
e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function
o(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var
a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return
Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,a)}retur
[...]
\ No newline at end of file
diff --git a/assets/js/c377a04b.0a5cb9f9.js b/assets/js/c377a04b.0a5cb9f9.js
deleted file mode 100644
index e7a91c71..00000000
--- a/assets/js/c377a04b.0a5cb9f9.js
+++ /dev/null
@@ -1 +0,0 @@
-"use
strict";(self.webpackChunkopendal_website=self.webpackChunkopendal_website||[]).push([[971],{3905:(e,t,n)=>{n.d(t,{Zo:()=>c,kt:()=>f});var
r=n(7294);function a(e,t,n){return t in
e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function
o(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var
r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return
Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}retur
[...]
\ No newline at end of file
diff --git a/assets/js/c377a04b.73c42b21.js b/assets/js/c377a04b.73c42b21.js
new file mode 100644
index 00000000..89805fc8
--- /dev/null
+++ b/assets/js/c377a04b.73c42b21.js
@@ -0,0 +1 @@
+"use
strict";(self.webpackChunkopendal_website=self.webpackChunkopendal_website||[]).push([[971],{3905:(e,t,n)=>{n.d(t,{Zo:()=>c,kt:()=>f});var
r=n(7294);function a(e,t,n){return t in
e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function
o(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var
r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return
Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}retur
[...]
\ No newline at end of file
diff --git a/assets/js/runtime~main.0a0c2b17.js
b/assets/js/runtime~main.ca29ba4c.js
similarity index 95%
rename from assets/js/runtime~main.0a0c2b17.js
rename to assets/js/runtime~main.ca29ba4c.js
index ff2a3d97..9ef347fd 100644
--- a/assets/js/runtime~main.0a0c2b17.js
+++ b/assets/js/runtime~main.ca29ba4c.js
@@ -1 +1 @@
-(()=>{"use strict";var e,t,r,a,o,f={},n={};function c(e){var t=n[e];if(void
0!==t)return t.exports;var r=n[e]={exports:{}};return
f[e].call(r.exports,r,r.exports,c),r.exports}c.m=f,e=[],c.O=(t,r,a,o)=>{if(!r){var
f=1/0;for(d=0;d<e.length;d++){r=e[d][0],a=e[d][1],o=e[d][2];for(var
n=!0,i=0;i<r.length;i++)(!1&o||f>=o)&&Object.keys(c.O).every((e=>c.O[e](r[i])))?r.splice(i--,1):(n=!1,o<f&&(f=o));if(n){e.splice(d--,1);var
b=a();void 0!==b&&(t=b)}}return t}o=o||0;for(var d=e.length;d>0&&e[d-1] [...]
\ No newline at end of file
+(()=>{"use strict";var e,t,r,a,o,f={},n={};function c(e){var t=n[e];if(void
0!==t)return t.exports;var r=n[e]={exports:{}};return
f[e].call(r.exports,r,r.exports,c),r.exports}c.m=f,e=[],c.O=(t,r,a,o)=>{if(!r){var
f=1/0;for(d=0;d<e.length;d++){r=e[d][0],a=e[d][1],o=e[d][2];for(var
n=!0,i=0;i<r.length;i++)(!1&o||f>=o)&&Object.keys(c.O).every((e=>c.O[e](r[i])))?r.splice(i--,1):(n=!1,o<f&&(f=o));if(n){e.splice(d--,1);var
b=a();void 0!==b&&(t=b)}}return t}o=o||0;for(var d=e.length;d>0&&e[d-1] [...]
\ No newline at end of file
diff --git a/blog/archive/index.html b/blog/archive/index.html
index 1ab5e58d..bc9e51ae 100644
--- a/blog/archive/index.html
+++ b/blog/archive/index.html
@@ -5,13 +5,13 @@
<meta name="generator" content="Docusaurus v2.3.1">
<title data-rh="true">Archive | Apache OpenDAL</title><meta data-rh="true"
name="viewport" content="width=device-width,initial-scale=1"><meta
data-rh="true" name="twitter:card" content="summary_large_image"><meta
data-rh="true" property="og:url"
content="https://opendal.apache.org/blog/archive"><meta data-rh="true"
name="docusaurus_locale" content="en"><meta data-rh="true"
name="docusaurus_tag" content="default"><meta data-rh="true"
name="docsearch:language" content="en"><meta data-rh="t [...]
<link rel="alternate" type="application/atom+xml" href="/blog/atom.xml"
title="Apache OpenDAL Atom Feed"><link rel="stylesheet"
href="/assets/css/styles.8610ae2e.css">
-<link rel="preload" href="/assets/js/runtime~main.0a0c2b17.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.ca29ba4c.js" as="script">
<link rel="preload" href="/assets/js/main.5b9603d6.js" as="script">
</head>
<body class="navigation-with-keyboard">
<script>!function(){function
t(t){document.documentElement.setAttribute("data-theme",t)}var e=function(){var
t=null;try{t=localStorage.getItem("theme")}catch(t){}return
t}();t(null!==e?e:"light")}()</script><div id="__docusaurus">
<div role="region" aria-label="Skip to main content"><a
class="skipToContent_fXgn" href="#docusaurus_skipToContent_fallback">Skip to
main content</a></div><nav aria-label="Main" class="navbar
navbar--fixed-top"><div class="navbar__inner"><div
class="navbar__items"><button aria-label="Toggle navigation bar"
aria-expanded="false" class="navbar__toggle clean-btn" type="button"><svg
width="30" height="30" viewBox="0 0 30 30" aria-hidden="true"><path
stroke="currentColor" stroke-linecap="roun [...]
-<script src="/assets/js/runtime~main.0a0c2b17.js"></script>
+<script src="/assets/js/runtime~main.ca29ba4c.js"></script>
<script src="/assets/js/main.5b9603d6.js"></script>
</body>
</html>
\ No newline at end of file
diff --git a/blog/index.html b/blog/index.html
index abc0d69b..d7e74455 100644
--- a/blog/index.html
+++ b/blog/index.html
@@ -5,13 +5,13 @@
<meta name="generator" content="Docusaurus v2.3.1">
<title data-rh="true">Blog | Apache OpenDAL</title><meta data-rh="true"
name="viewport" content="width=device-width,initial-scale=1"><meta
data-rh="true" name="twitter:card" content="summary_large_image"><meta
data-rh="true" property="og:url"
content="https://opendal.apache.org/blog"><meta data-rh="true"
name="docusaurus_locale" content="en"><meta data-rh="true"
name="docsearch:language" content="en"><meta data-rh="true" property="og:title"
content="Blog | Apache OpenDAL"><meta data-rh=" [...]
<link rel="alternate" type="application/atom+xml" href="/blog/atom.xml"
title="Apache OpenDAL Atom Feed"><link rel="stylesheet"
href="/assets/css/styles.8610ae2e.css">
-<link rel="preload" href="/assets/js/runtime~main.0a0c2b17.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.ca29ba4c.js" as="script">
<link rel="preload" href="/assets/js/main.5b9603d6.js" as="script">
</head>
<body class="navigation-with-keyboard">
<script>!function(){function
t(t){document.documentElement.setAttribute("data-theme",t)}var e=function(){var
t=null;try{t=localStorage.getItem("theme")}catch(t){}return
t}();t(null!==e?e:"light")}()</script><div id="__docusaurus">
<div role="region" aria-label="Skip to main content"><a
class="skipToContent_fXgn" href="#docusaurus_skipToContent_fallback">Skip to
main content</a></div><nav aria-label="Main" class="navbar
navbar--fixed-top"><div class="navbar__inner"><div
class="navbar__items"><button aria-label="Toggle navigation bar"
aria-expanded="false" class="navbar__toggle clean-btn" type="button"><svg
width="30" height="30" viewBox="0 0 30 30" aria-hidden="true"><path
stroke="currentColor" stroke-linecap="roun [...]
-<script src="/assets/js/runtime~main.0a0c2b17.js"></script>
+<script src="/assets/js/runtime~main.ca29ba4c.js"></script>
<script src="/assets/js/main.5b9603d6.js"></script>
</body>
</html>
\ No newline at end of file
diff --git a/blog/opendal-entered-apache-incubator/index.html
b/blog/opendal-entered-apache-incubator/index.html
index 8cf19904..c56290f6 100644
--- a/blog/opendal-entered-apache-incubator/index.html
+++ b/blog/opendal-entered-apache-incubator/index.html
@@ -5,13 +5,13 @@
<meta name="generator" content="Docusaurus v2.3.1">
<title data-rh="true">Way to Go: OpenDAL successfully entered Apache Incubator
| Apache OpenDAL</title><meta data-rh="true" name="viewport"
content="width=device-width,initial-scale=1"><meta data-rh="true"
name="twitter:card" content="summary_large_image"><meta data-rh="true"
property="og:url"
content="https://opendal.apache.org/blog/opendal-entered-apache-incubator"><meta
data-rh="true" name="docusaurus_locale" content="en"><meta data-rh="true"
name="docusaurus_tag" content="default"><m [...]
<link rel="alternate" type="application/atom+xml" href="/blog/atom.xml"
title="Apache OpenDAL Atom Feed"><link rel="stylesheet"
href="/assets/css/styles.8610ae2e.css">
-<link rel="preload" href="/assets/js/runtime~main.0a0c2b17.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.ca29ba4c.js" as="script">
<link rel="preload" href="/assets/js/main.5b9603d6.js" as="script">
</head>
<body class="navigation-with-keyboard">
<script>!function(){function
t(t){document.documentElement.setAttribute("data-theme",t)}var e=function(){var
t=null;try{t=localStorage.getItem("theme")}catch(t){}return
t}();t(null!==e?e:"light")}()</script><div id="__docusaurus">
<div role="region" aria-label="Skip to main content"><a
class="skipToContent_fXgn" href="#docusaurus_skipToContent_fallback">Skip to
main content</a></div><nav aria-label="Main" class="navbar
navbar--fixed-top"><div class="navbar__inner"><div
class="navbar__items"><button aria-label="Toggle navigation bar"
aria-expanded="false" class="navbar__toggle clean-btn" type="button"><svg
width="30" height="30" viewBox="0 0 30 30" aria-hidden="true"><path
stroke="currentColor" stroke-linecap="roun [...]
-<script src="/assets/js/runtime~main.0a0c2b17.js"></script>
+<script src="/assets/js/runtime~main.ca29ba4c.js"></script>
<script src="/assets/js/main.5b9603d6.js"></script>
</body>
</html>
\ No newline at end of file
diff --git a/blog/tags/announcement/index.html
b/blog/tags/announcement/index.html
index 851d3e87..d724c007 100644
--- a/blog/tags/announcement/index.html
+++ b/blog/tags/announcement/index.html
@@ -5,13 +5,13 @@
<meta name="generator" content="Docusaurus v2.3.1">
<title data-rh="true">One post tagged with "announcement" | Apache
OpenDAL</title><meta data-rh="true" name="viewport"
content="width=device-width,initial-scale=1"><meta data-rh="true"
name="twitter:card" content="summary_large_image"><meta data-rh="true"
property="og:url"
content="https://opendal.apache.org/blog/tags/announcement"><meta
data-rh="true" name="docusaurus_locale" content="en"><meta data-rh="true"
name="docsearch:language" content="en"><meta data-rh="true" property [...]
<link rel="alternate" type="application/atom+xml" href="/blog/atom.xml"
title="Apache OpenDAL Atom Feed"><link rel="stylesheet"
href="/assets/css/styles.8610ae2e.css">
-<link rel="preload" href="/assets/js/runtime~main.0a0c2b17.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.ca29ba4c.js" as="script">
<link rel="preload" href="/assets/js/main.5b9603d6.js" as="script">
</head>
<body class="navigation-with-keyboard">
<script>!function(){function
t(t){document.documentElement.setAttribute("data-theme",t)}var e=function(){var
t=null;try{t=localStorage.getItem("theme")}catch(t){}return
t}();t(null!==e?e:"light")}()</script><div id="__docusaurus">
<div role="region" aria-label="Skip to main content"><a
class="skipToContent_fXgn" href="#docusaurus_skipToContent_fallback">Skip to
main content</a></div><nav aria-label="Main" class="navbar
navbar--fixed-top"><div class="navbar__inner"><div
class="navbar__items"><button aria-label="Toggle navigation bar"
aria-expanded="false" class="navbar__toggle clean-btn" type="button"><svg
width="30" height="30" viewBox="0 0 30 30" aria-hidden="true"><path
stroke="currentColor" stroke-linecap="roun [...]
-<script src="/assets/js/runtime~main.0a0c2b17.js"></script>
+<script src="/assets/js/runtime~main.ca29ba4c.js"></script>
<script src="/assets/js/main.5b9603d6.js"></script>
</body>
</html>
\ No newline at end of file
diff --git a/blog/tags/index.html b/blog/tags/index.html
index e82c452e..dc2871bf 100644
--- a/blog/tags/index.html
+++ b/blog/tags/index.html
@@ -5,13 +5,13 @@
<meta name="generator" content="Docusaurus v2.3.1">
<title data-rh="true">Tags | Apache OpenDAL</title><meta data-rh="true"
name="viewport" content="width=device-width,initial-scale=1"><meta
data-rh="true" name="twitter:card" content="summary_large_image"><meta
data-rh="true" property="og:url"
content="https://opendal.apache.org/blog/tags"><meta data-rh="true"
name="docusaurus_locale" content="en"><meta data-rh="true"
name="docsearch:language" content="en"><meta data-rh="true" property="og:title"
content="Tags | Apache OpenDAL"><meta data [...]
<link rel="alternate" type="application/atom+xml" href="/blog/atom.xml"
title="Apache OpenDAL Atom Feed"><link rel="stylesheet"
href="/assets/css/styles.8610ae2e.css">
-<link rel="preload" href="/assets/js/runtime~main.0a0c2b17.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.ca29ba4c.js" as="script">
<link rel="preload" href="/assets/js/main.5b9603d6.js" as="script">
</head>
<body class="navigation-with-keyboard">
<script>!function(){function
t(t){document.documentElement.setAttribute("data-theme",t)}var e=function(){var
t=null;try{t=localStorage.getItem("theme")}catch(t){}return
t}();t(null!==e?e:"light")}()</script><div id="__docusaurus">
<div role="region" aria-label="Skip to main content"><a
class="skipToContent_fXgn" href="#docusaurus_skipToContent_fallback">Skip to
main content</a></div><nav aria-label="Main" class="navbar
navbar--fixed-top"><div class="navbar__inner"><div
class="navbar__items"><button aria-label="Toggle navigation bar"
aria-expanded="false" class="navbar__toggle clean-btn" type="button"><svg
width="30" height="30" viewBox="0 0 30 30" aria-hidden="true"><path
stroke="currentColor" stroke-linecap="roun [...]
-<script src="/assets/js/runtime~main.0a0c2b17.js"></script>
+<script src="/assets/js/runtime~main.ca29ba4c.js"></script>
<script src="/assets/js/main.5b9603d6.js"></script>
</body>
</html>
\ No newline at end of file
diff --git a/docs/index.html b/docs/index.html
index 38e2dc23..e308c8b1 100644
--- a/docs/index.html
+++ b/docs/index.html
@@ -5,13 +5,13 @@
<meta name="generator" content="Docusaurus v2.3.1">
<title data-rh="true">Overview | Apache OpenDAL</title><meta data-rh="true"
name="viewport" content="width=device-width,initial-scale=1"><meta
data-rh="true" name="twitter:card" content="summary_large_image"><meta
data-rh="true" property="og:url"
content="https://opendal.apache.org/docs/"><meta data-rh="true"
name="docusaurus_locale" content="en"><meta data-rh="true"
name="docsearch:language" content="en"><meta data-rh="true"
name="docusaurus_version" content="current"><meta data-rh="tru [...]
<link rel="alternate" type="application/atom+xml" href="/blog/atom.xml"
title="Apache OpenDAL Atom Feed"><link rel="stylesheet"
href="/assets/css/styles.8610ae2e.css">
-<link rel="preload" href="/assets/js/runtime~main.0a0c2b17.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.ca29ba4c.js" as="script">
<link rel="preload" href="/assets/js/main.5b9603d6.js" as="script">
</head>
<body class="navigation-with-keyboard">
<script>!function(){function
t(t){document.documentElement.setAttribute("data-theme",t)}var e=function(){var
t=null;try{t=localStorage.getItem("theme")}catch(t){}return
t}();t(null!==e?e:"light")}()</script><div id="__docusaurus">
-<div role="region" aria-label="Skip to main content"><a
class="skipToContent_fXgn" href="#docusaurus_skipToContent_fallback">Skip to
main content</a></div><nav aria-label="Main" class="navbar
navbar--fixed-top"><div class="navbar__inner"><div
class="navbar__items"><button aria-label="Toggle navigation bar"
aria-expanded="false" class="navbar__toggle clean-btn" type="button"><svg
width="30" height="30" viewBox="0 0 30 30" aria-hidden="true"><path
stroke="currentColor" stroke-linecap="roun [...]
-<script src="/assets/js/runtime~main.0a0c2b17.js"></script>
+<div role="region" aria-label="Skip to main content"><a
class="skipToContent_fXgn" href="#docusaurus_skipToContent_fallback">Skip to
main content</a></div><nav aria-label="Main" class="navbar
navbar--fixed-top"><div class="navbar__inner"><div
class="navbar__items"><button aria-label="Toggle navigation bar"
aria-expanded="false" class="navbar__toggle clean-btn" type="button"><svg
width="30" height="30" viewBox="0 0 30 30" aria-hidden="true"><path
stroke="currentColor" stroke-linecap="roun [...]
+<script src="/assets/js/runtime~main.ca29ba4c.js"></script>
<script src="/assets/js/main.5b9603d6.js"></script>
</body>
</html>
\ No newline at end of file
diff --git a/docs/nodejs/classes/BlockingLister.html
b/docs/nodejs/classes/BlockingLister.html
index b7baac09..fe72d775 100644
--- a/docs/nodejs/classes/BlockingLister.html
+++ b/docs/nodejs/classes/BlockingLister.html
@@ -20,7 +20,7 @@
<ul class="tsd-hierarchy">
<li><span class="target">BlockingLister</span></li></ul></section><aside
class="tsd-sources">
<ul>
-<li>Defined in <a
href="https://github.com/apache/incubator-opendal/blob/bd01753/bindings/nodejs/index.d.ts#L413">index.d.ts:413</a></li></ul></aside>
+<li>Defined in <a
href="https://github.com/apache/incubator-opendal/blob/fa9e5d1/bindings/nodejs/index.d.ts#L413">index.d.ts:413</a></li></ul></aside>
<section class="tsd-panel-group tsd-index-group">
<section class="tsd-panel tsd-index-panel">
<details class="tsd-index-content tsd-index-accordion" open><summary
class="tsd-accordion-summary tsd-index-summary">
@@ -51,7 +51,7 @@
<li class="tsd-description">
<h4 class="tsd-returns-title">Returns <span
class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> |
</span><a href="Entry.html" class="tsd-signature-type"
data-tsd-kind="Class">Entry</a></h4><aside class="tsd-sources">
<ul>
-<li>Defined in <a
href="https://github.com/apache/incubator-opendal/blob/bd01753/bindings/nodejs/index.d.ts#L414">index.d.ts:414</a></li></ul></aside></li></ul></section></section></div>
+<li>Defined in <a
href="https://github.com/apache/incubator-opendal/blob/fa9e5d1/bindings/nodejs/index.d.ts#L414">index.d.ts:414</a></li></ul></aside></li></ul></section></section></div>
<div class="col-4 col-menu menu-sticky-wrap menu-highlight">
<div class="tsd-navigation settings">
<details class="tsd-index-accordion"><summary class="tsd-accordion-summary">
diff --git a/docs/nodejs/classes/Entry.html b/docs/nodejs/classes/Entry.html
index f3ccfdaf..8d1593a4 100644
--- a/docs/nodejs/classes/Entry.html
+++ b/docs/nodejs/classes/Entry.html
@@ -20,7 +20,7 @@
<ul class="tsd-hierarchy">
<li><span class="target">Entry</span></li></ul></section><aside
class="tsd-sources">
<ul>
-<li>Defined in <a
href="https://github.com/apache/incubator-opendal/blob/bd01753/bindings/nodejs/index.d.ts#L380">index.d.ts:380</a></li></ul></aside>
+<li>Defined in <a
href="https://github.com/apache/incubator-opendal/blob/fa9e5d1/bindings/nodejs/index.d.ts#L380">index.d.ts:380</a></li></ul></aside>
<section class="tsd-panel-group tsd-index-group">
<section class="tsd-panel tsd-index-panel">
<details class="tsd-index-content tsd-index-accordion" open><summary
class="tsd-accordion-summary tsd-index-summary">
@@ -53,7 +53,7 @@
</div>
<h4 class="tsd-returns-title">Returns <span
class="tsd-signature-type">string</span></h4><aside class="tsd-sources">
<ul>
-<li>Defined in <a
href="https://github.com/apache/incubator-opendal/blob/bd01753/bindings/nodejs/index.d.ts#L382">index.d.ts:382</a></li></ul></aside></li></ul></section></section></div>
+<li>Defined in <a
href="https://github.com/apache/incubator-opendal/blob/fa9e5d1/bindings/nodejs/index.d.ts#L382">index.d.ts:382</a></li></ul></aside></li></ul></section></section></div>
<div class="col-4 col-menu menu-sticky-wrap menu-highlight">
<div class="tsd-navigation settings">
<details class="tsd-index-accordion"><summary class="tsd-accordion-summary">
diff --git a/docs/nodejs/classes/Lister.html b/docs/nodejs/classes/Lister.html
index 1e2f9b12..faab2568 100644
--- a/docs/nodejs/classes/Lister.html
+++ b/docs/nodejs/classes/Lister.html
@@ -20,7 +20,7 @@
<ul class="tsd-hierarchy">
<li><span class="target">Lister</span></li></ul></section><aside
class="tsd-sources">
<ul>
-<li>Defined in <a
href="https://github.com/apache/incubator-opendal/blob/bd01753/bindings/nodejs/index.d.ts#L402">index.d.ts:402</a></li></ul></aside>
+<li>Defined in <a
href="https://github.com/apache/incubator-opendal/blob/fa9e5d1/bindings/nodejs/index.d.ts#L402">index.d.ts:402</a></li></ul></aside>
<section class="tsd-panel-group tsd-index-group">
<section class="tsd-panel tsd-index-panel">
<details class="tsd-index-content tsd-index-accordion" open><summary
class="tsd-accordion-summary tsd-index-summary">
@@ -61,7 +61,7 @@ thing internally.</p>
</div>
<h4 class="tsd-returns-title">Returns <span
class="tsd-signature-type">Promise</span><span
class="tsd-signature-symbol"><</span><span
class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> |
</span><a href="Entry.html" class="tsd-signature-type"
data-tsd-kind="Class">Entry</a><span
class="tsd-signature-symbol">></span></h4><aside class="tsd-sources">
<ul>
-<li>Defined in <a
href="https://github.com/apache/incubator-opendal/blob/bd01753/bindings/nodejs/index.d.ts#L411">index.d.ts:411</a></li></ul></aside></li></ul></section></section></div>
+<li>Defined in <a
href="https://github.com/apache/incubator-opendal/blob/fa9e5d1/bindings/nodejs/index.d.ts#L411">index.d.ts:411</a></li></ul></aside></li></ul></section></section></div>
<div class="col-4 col-menu menu-sticky-wrap menu-highlight">
<div class="tsd-navigation settings">
<details class="tsd-index-accordion"><summary class="tsd-accordion-summary">
diff --git a/docs/nodejs/classes/Metadata.html
b/docs/nodejs/classes/Metadata.html
index 0370e980..708d084d 100644
--- a/docs/nodejs/classes/Metadata.html
+++ b/docs/nodejs/classes/Metadata.html
@@ -20,7 +20,7 @@
<ul class="tsd-hierarchy">
<li><span class="target">Metadata</span></li></ul></section><aside
class="tsd-sources">
<ul>
-<li>Defined in <a
href="https://github.com/apache/incubator-opendal/blob/bd01753/bindings/nodejs/index.d.ts#L384">index.d.ts:384</a></li></ul></aside>
+<li>Defined in <a
href="https://github.com/apache/incubator-opendal/blob/fa9e5d1/bindings/nodejs/index.d.ts#L384">index.d.ts:384</a></li></ul></aside>
<section class="tsd-panel-group tsd-index-group">
<section class="tsd-panel tsd-index-panel">
<details class="tsd-index-content tsd-index-accordion" open><summary
class="tsd-accordion-summary tsd-index-summary">
@@ -63,7 +63,7 @@
</div>
<h4 class="tsd-returns-title">Returns <span
class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> |
</span><span class="tsd-signature-type">string</span></h4><aside
class="tsd-sources">
<ul>
-<li>Defined in <a
href="https://github.com/apache/incubator-opendal/blob/bd01753/bindings/nodejs/index.d.ts#L390">index.d.ts:390</a></li></ul></aside></li></ul></section>
+<li>Defined in <a
href="https://github.com/apache/incubator-opendal/blob/fa9e5d1/bindings/nodejs/index.d.ts#L390">index.d.ts:390</a></li></ul></aside></li></ul></section>
<section class="tsd-panel tsd-member tsd-kind-accessor
tsd-parent-kind-class"><a id="contentLength" class="tsd-anchor"></a>
<h3 class="tsd-anchor-link"><span>content<wbr/>Length</span><a
href="#contentLength" aria-label="Permalink" class="tsd-anchor-icon"><svg
class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2"
stroke="currentColor" fill="none" stroke-linecap="round"
stroke-linejoin="round"><use href="#icon-anchor-a"></use><use
href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></h3>
<ul class="tsd-signatures tsd-kind-accessor tsd-parent-kind-class">
@@ -73,7 +73,7 @@
</div>
<h4 class="tsd-returns-title">Returns <span
class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> |
</span><span class="tsd-signature-type">bigint</span></h4><aside
class="tsd-sources">
<ul>
-<li>Defined in <a
href="https://github.com/apache/incubator-opendal/blob/bd01753/bindings/nodejs/index.d.ts#L392">index.d.ts:392</a></li></ul></aside></li></ul></section>
+<li>Defined in <a
href="https://github.com/apache/incubator-opendal/blob/fa9e5d1/bindings/nodejs/index.d.ts#L392">index.d.ts:392</a></li></ul></aside></li></ul></section>
<section class="tsd-panel tsd-member tsd-kind-accessor
tsd-parent-kind-class"><a id="contentMd5" class="tsd-anchor"></a>
<h3 class="tsd-anchor-link"><span>content<wbr/>Md5</span><a href="#contentMd5"
aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler
icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor"
fill="none" stroke-linecap="round" stroke-linejoin="round"><use
href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use
href="#icon-anchor-c"></use></svg></a></h3>
<ul class="tsd-signatures tsd-kind-accessor tsd-parent-kind-class">
@@ -83,7 +83,7 @@
</div>
<h4 class="tsd-returns-title">Returns <span
class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> |
</span><span class="tsd-signature-type">string</span></h4><aside
class="tsd-sources">
<ul>
-<li>Defined in <a
href="https://github.com/apache/incubator-opendal/blob/bd01753/bindings/nodejs/index.d.ts#L394">index.d.ts:394</a></li></ul></aside></li></ul></section>
+<li>Defined in <a
href="https://github.com/apache/incubator-opendal/blob/fa9e5d1/bindings/nodejs/index.d.ts#L394">index.d.ts:394</a></li></ul></aside></li></ul></section>
<section class="tsd-panel tsd-member tsd-kind-accessor
tsd-parent-kind-class"><a id="contentType" class="tsd-anchor"></a>
<h3 class="tsd-anchor-link"><span>content<wbr/>Type</span><a
href="#contentType" aria-label="Permalink" class="tsd-anchor-icon"><svg
class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2"
stroke="currentColor" fill="none" stroke-linecap="round"
stroke-linejoin="round"><use href="#icon-anchor-a"></use><use
href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></h3>
<ul class="tsd-signatures tsd-kind-accessor tsd-parent-kind-class">
@@ -93,7 +93,7 @@
</div>
<h4 class="tsd-returns-title">Returns <span
class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> |
</span><span class="tsd-signature-type">string</span></h4><aside
class="tsd-sources">
<ul>
-<li>Defined in <a
href="https://github.com/apache/incubator-opendal/blob/bd01753/bindings/nodejs/index.d.ts#L396">index.d.ts:396</a></li></ul></aside></li></ul></section>
+<li>Defined in <a
href="https://github.com/apache/incubator-opendal/blob/fa9e5d1/bindings/nodejs/index.d.ts#L396">index.d.ts:396</a></li></ul></aside></li></ul></section>
<section class="tsd-panel tsd-member tsd-kind-accessor
tsd-parent-kind-class"><a id="etag" class="tsd-anchor"></a>
<h3 class="tsd-anchor-link"><span>etag</span><a href="#etag"
aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler
icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor"
fill="none" stroke-linecap="round" stroke-linejoin="round"><use
href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use
href="#icon-anchor-c"></use></svg></a></h3>
<ul class="tsd-signatures tsd-kind-accessor tsd-parent-kind-class">
@@ -103,7 +103,7 @@
</div>
<h4 class="tsd-returns-title">Returns <span
class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> |
</span><span class="tsd-signature-type">string</span></h4><aside
class="tsd-sources">
<ul>
-<li>Defined in <a
href="https://github.com/apache/incubator-opendal/blob/bd01753/bindings/nodejs/index.d.ts#L398">index.d.ts:398</a></li></ul></aside></li></ul></section>
+<li>Defined in <a
href="https://github.com/apache/incubator-opendal/blob/fa9e5d1/bindings/nodejs/index.d.ts#L398">index.d.ts:398</a></li></ul></aside></li></ul></section>
<section class="tsd-panel tsd-member tsd-kind-accessor
tsd-parent-kind-class"><a id="lastModified" class="tsd-anchor"></a>
<h3 class="tsd-anchor-link"><span>last<wbr/>Modified</span><a
href="#lastModified" aria-label="Permalink" class="tsd-anchor-icon"><svg
class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2"
stroke="currentColor" fill="none" stroke-linecap="round"
stroke-linejoin="round"><use href="#icon-anchor-a"></use><use
href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></h3>
<ul class="tsd-signatures tsd-kind-accessor tsd-parent-kind-class">
@@ -113,7 +113,7 @@
</div>
<h4 class="tsd-returns-title">Returns <span
class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> |
</span><span class="tsd-signature-type">string</span></h4><aside
class="tsd-sources">
<ul>
-<li>Defined in <a
href="https://github.com/apache/incubator-opendal/blob/bd01753/bindings/nodejs/index.d.ts#L400">index.d.ts:400</a></li></ul></aside></li></ul></section></section>
+<li>Defined in <a
href="https://github.com/apache/incubator-opendal/blob/fa9e5d1/bindings/nodejs/index.d.ts#L400">index.d.ts:400</a></li></ul></aside></li></ul></section></section>
<section class="tsd-panel-group tsd-member-group">
<h2>Methods</h2>
<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a
id="isDirectory" class="tsd-anchor"></a>
@@ -125,7 +125,7 @@
</div>
<h4 class="tsd-returns-title">Returns <span
class="tsd-signature-type">boolean</span></h4><aside class="tsd-sources">
<ul>
-<li>Defined in <a
href="https://github.com/apache/incubator-opendal/blob/bd01753/bindings/nodejs/index.d.ts#L386">index.d.ts:386</a></li></ul></aside></li></ul></section>
+<li>Defined in <a
href="https://github.com/apache/incubator-opendal/blob/fa9e5d1/bindings/nodejs/index.d.ts#L386">index.d.ts:386</a></li></ul></aside></li></ul></section>
<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a
id="isFile" class="tsd-anchor"></a>
<h3 class="tsd-anchor-link"><span>is<wbr/>File</span><a href="#isFile"
aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler
icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor"
fill="none" stroke-linecap="round" stroke-linejoin="round"><use
href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use
href="#icon-anchor-c"></use></svg></a></h3>
<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class">
@@ -135,7 +135,7 @@
</div>
<h4 class="tsd-returns-title">Returns <span
class="tsd-signature-type">boolean</span></h4><aside class="tsd-sources">
<ul>
-<li>Defined in <a
href="https://github.com/apache/incubator-opendal/blob/bd01753/bindings/nodejs/index.d.ts#L388">index.d.ts:388</a></li></ul></aside></li></ul></section></section></div>
+<li>Defined in <a
href="https://github.com/apache/incubator-opendal/blob/fa9e5d1/bindings/nodejs/index.d.ts#L388">index.d.ts:388</a></li></ul></aside></li></ul></section></section></div>
<div class="col-4 col-menu menu-sticky-wrap menu-highlight">
<div class="tsd-navigation settings">
<details class="tsd-index-accordion"><summary class="tsd-accordion-summary">
diff --git a/docs/nodejs/classes/Operator.html
b/docs/nodejs/classes/Operator.html
index 0169218d..61d6442c 100644
--- a/docs/nodejs/classes/Operator.html
+++ b/docs/nodejs/classes/Operator.html
@@ -20,7 +20,7 @@
<ul class="tsd-hierarchy">
<li><span class="target">Operator</span></li></ul></section><aside
class="tsd-sources">
<ul>
-<li>Defined in <a
href="https://github.com/apache/incubator-opendal/blob/bd01753/bindings/nodejs/index.d.ts#L33">index.d.ts:33</a></li></ul></aside>
+<li>Defined in <a
href="https://github.com/apache/incubator-opendal/blob/fa9e5d1/bindings/nodejs/index.d.ts#L33">index.d.ts:33</a></li></ul></aside>
<section class="tsd-panel-group tsd-index-group">
<section class="tsd-panel tsd-index-panel">
<details class="tsd-index-content tsd-index-accordion" open><summary
class="tsd-accordion-summary tsd-index-summary">
@@ -75,7 +75,7 @@
<h5><code class="tsd-tag ts-flagOptional">Optional</code> options: <span
class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> |
</span><span class="tsd-signature-type">Record</span><span
class="tsd-signature-symbol"><</span><span
class="tsd-signature-type">string</span><span class="tsd-signature-symbol">,
</span><span class="tsd-signature-type">string</span><span
class="tsd-signature-symbol">></span></h5></li></ul></div>
<h4 class="tsd-returns-title">Returns <a href="Operator.html"
class="tsd-signature-type" data-tsd-kind="Class">Operator</a></h4><aside
class="tsd-sources">
<ul>
-<li>Defined in <a
href="https://github.com/apache/incubator-opendal/blob/bd01753/bindings/nodejs/index.d.ts#L34">index.d.ts:34</a></li></ul></aside></li></ul></section></section>
+<li>Defined in <a
href="https://github.com/apache/incubator-opendal/blob/fa9e5d1/bindings/nodejs/index.d.ts#L34">index.d.ts:34</a></li></ul></aside></li></ul></section></section>
<section class="tsd-panel-group tsd-member-group">
<h2>Methods</h2>
<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a
id="check" class="tsd-anchor"></a>
@@ -94,7 +94,7 @@
</div>
<h4 class="tsd-returns-title">Returns <span
class="tsd-signature-type">Promise</span><span
class="tsd-signature-symbol"><</span><span
class="tsd-signature-type">void</span><span
class="tsd-signature-symbol">></span></h4><aside class="tsd-sources">
<ul>
-<li>Defined in <a
href="https://github.com/apache/incubator-opendal/blob/bd01753/bindings/nodejs/index.d.ts#L77">index.d.ts:77</a></li></ul></aside></li></ul></section>
+<li>Defined in <a
href="https://github.com/apache/incubator-opendal/blob/fa9e5d1/bindings/nodejs/index.d.ts#L77">index.d.ts:77</a></li></ul></aside></li></ul></section>
<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a
id="copy" class="tsd-anchor"></a>
<h3 class="tsd-anchor-link"><span>copy</span><a href="#copy"
aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler
icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor"
fill="none" stroke-linecap="round" stroke-linejoin="round"><use
href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use
href="#icon-anchor-c"></use></svg></a></h3>
<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class">
@@ -117,7 +117,7 @@
<h5>to: <span class="tsd-signature-type">string</span></h5></li></ul></div>
<h4 class="tsd-returns-title">Returns <span
class="tsd-signature-type">Promise</span><span
class="tsd-signature-symbol"><</span><span
class="tsd-signature-type">void</span><span
class="tsd-signature-symbol">></span></h4><aside class="tsd-sources">
<ul>
-<li>Defined in <a
href="https://github.com/apache/incubator-opendal/blob/bd01753/bindings/nodejs/index.d.ts#L162">index.d.ts:162</a></li></ul></aside></li></ul></section>
+<li>Defined in <a
href="https://github.com/apache/incubator-opendal/blob/fa9e5d1/bindings/nodejs/index.d.ts#L162">index.d.ts:162</a></li></ul></aside></li></ul></section>
<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a
id="copySync" class="tsd-anchor"></a>
<h3 class="tsd-anchor-link"><span>copy<wbr/>Sync</span><a href="#copySync"
aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler
icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor"
fill="none" stroke-linecap="round" stroke-linejoin="round"><use
href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use
href="#icon-anchor-c"></use></svg></a></h3>
<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class">
@@ -140,7 +140,7 @@
<h5>to: <span class="tsd-signature-type">string</span></h5></li></ul></div>
<h4 class="tsd-returns-title">Returns <span
class="tsd-signature-type">void</span></h4><aside class="tsd-sources">
<ul>
-<li>Defined in <a
href="https://github.com/apache/incubator-opendal/blob/bd01753/bindings/nodejs/index.d.ts#L171">index.d.ts:171</a></li></ul></aside></li></ul></section>
+<li>Defined in <a
href="https://github.com/apache/incubator-opendal/blob/fa9e5d1/bindings/nodejs/index.d.ts#L171">index.d.ts:171</a></li></ul></aside></li></ul></section>
<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a
id="createDir" class="tsd-anchor"></a>
<h3 class="tsd-anchor-link"><span>create<wbr/>Dir</span><a href="#createDir"
aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler
icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor"
fill="none" stroke-linecap="round" stroke-linejoin="round"><use
href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use
href="#icon-anchor-c"></use></svg></a></h3>
<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class">
@@ -161,7 +161,7 @@
<h5>path: <span class="tsd-signature-type">string</span></h5></li></ul></div>
<h4 class="tsd-returns-title">Returns <span
class="tsd-signature-type">Promise</span><span
class="tsd-signature-symbol"><</span><span
class="tsd-signature-type">void</span><span
class="tsd-signature-symbol">></span></h4><aside class="tsd-sources">
<ul>
-<li>Defined in <a
href="https://github.com/apache/incubator-opendal/blob/bd01753/bindings/nodejs/index.d.ts#L104">index.d.ts:104</a></li></ul></aside></li></ul></section>
+<li>Defined in <a
href="https://github.com/apache/incubator-opendal/blob/fa9e5d1/bindings/nodejs/index.d.ts#L104">index.d.ts:104</a></li></ul></aside></li></ul></section>
<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a
id="createDirSync" class="tsd-anchor"></a>
<h3 class="tsd-anchor-link"><span>create<wbr/>Dir<wbr/>Sync</span><a
href="#createDirSync" aria-label="Permalink" class="tsd-anchor-icon"><svg
class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2"
stroke="currentColor" fill="none" stroke-linecap="round"
stroke-linejoin="round"><use href="#icon-anchor-a"></use><use
href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></h3>
<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class">
@@ -182,7 +182,7 @@
<h5>path: <span class="tsd-signature-type">string</span></h5></li></ul></div>
<h4 class="tsd-returns-title">Returns <span
class="tsd-signature-type">void</span></h4><aside class="tsd-sources">
<ul>
-<li>Defined in <a
href="https://github.com/apache/incubator-opendal/blob/bd01753/bindings/nodejs/index.d.ts#L113">index.d.ts:113</a></li></ul></aside></li></ul></section>
+<li>Defined in <a
href="https://github.com/apache/incubator-opendal/blob/fa9e5d1/bindings/nodejs/index.d.ts#L113">index.d.ts:113</a></li></ul></aside></li></ul></section>
<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a
id="delete" class="tsd-anchor"></a>
<h3 class="tsd-anchor-link"><span>delete</span><a href="#delete"
aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler
icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor"
fill="none" stroke-linecap="round" stroke-linejoin="round"><use
href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use
href="#icon-anchor-c"></use></svg></a></h3>
<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class">
@@ -208,7 +208,7 @@
<h5>path: <span class="tsd-signature-type">string</span></h5></li></ul></div>
<h4 class="tsd-returns-title">Returns <span
class="tsd-signature-type">Promise</span><span
class="tsd-signature-symbol"><</span><span
class="tsd-signature-type">void</span><span
class="tsd-signature-symbol">></span></h4><aside class="tsd-sources">
<ul>
-<li>Defined in <a
href="https://github.com/apache/incubator-opendal/blob/bd01753/bindings/nodejs/index.d.ts#L251">index.d.ts:251</a></li></ul></aside></li></ul></section>
+<li>Defined in <a
href="https://github.com/apache/incubator-opendal/blob/fa9e5d1/bindings/nodejs/index.d.ts#L251">index.d.ts:251</a></li></ul></aside></li></ul></section>
<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a
id="deleteSync" class="tsd-anchor"></a>
<h3 class="tsd-anchor-link"><span>delete<wbr/>Sync</span><a href="#deleteSync"
aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler
icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor"
fill="none" stroke-linecap="round" stroke-linejoin="round"><use
href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use
href="#icon-anchor-c"></use></svg></a></h3>
<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class">
@@ -229,7 +229,7 @@
<h5>path: <span class="tsd-signature-type">string</span></h5></li></ul></div>
<h4 class="tsd-returns-title">Returns <span
class="tsd-signature-type">void</span></h4><aside class="tsd-sources">
<ul>
-<li>Defined in <a
href="https://github.com/apache/incubator-opendal/blob/bd01753/bindings/nodejs/index.d.ts#L260">index.d.ts:260</a></li></ul></aside></li></ul></section>
+<li>Defined in <a
href="https://github.com/apache/incubator-opendal/blob/fa9e5d1/bindings/nodejs/index.d.ts#L260">index.d.ts:260</a></li></ul></aside></li></ul></section>
<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a
id="isExist" class="tsd-anchor"></a>
<h3 class="tsd-anchor-link"><span>is<wbr/>Exist</span><a href="#isExist"
aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler
icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor"
fill="none" stroke-linecap="round" stroke-linejoin="round"><use
href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use
href="#icon-anchor-c"></use></svg></a></h3>
<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class">
@@ -250,7 +250,7 @@
<h5>path: <span class="tsd-signature-type">string</span></h5></li></ul></div>
<h4 class="tsd-returns-title">Returns <span
class="tsd-signature-type">Promise</span><span
class="tsd-signature-symbol"><</span><span
class="tsd-signature-type">boolean</span><span
class="tsd-signature-symbol">></span></h4><aside class="tsd-sources">
<ul>
-<li>Defined in <a
href="https://github.com/apache/incubator-opendal/blob/bd01753/bindings/nodejs/index.d.ts#L86">index.d.ts:86</a></li></ul></aside></li></ul></section>
+<li>Defined in <a
href="https://github.com/apache/incubator-opendal/blob/fa9e5d1/bindings/nodejs/index.d.ts#L86">index.d.ts:86</a></li></ul></aside></li></ul></section>
<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a
id="isExistSync" class="tsd-anchor"></a>
<h3 class="tsd-anchor-link"><span>is<wbr/>Exist<wbr/>Sync</span><a
href="#isExistSync" aria-label="Permalink" class="tsd-anchor-icon"><svg
class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2"
stroke="currentColor" fill="none" stroke-linecap="round"
stroke-linejoin="round"><use href="#icon-anchor-a"></use><use
href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></h3>
<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class">
@@ -271,7 +271,7 @@
<h5>path: <span class="tsd-signature-type">string</span></h5></li></ul></div>
<h4 class="tsd-returns-title">Returns <span
class="tsd-signature-type">boolean</span></h4><aside class="tsd-sources">
<ul>
-<li>Defined in <a
href="https://github.com/apache/incubator-opendal/blob/bd01753/bindings/nodejs/index.d.ts#L95">index.d.ts:95</a></li></ul></aside></li></ul></section>
+<li>Defined in <a
href="https://github.com/apache/incubator-opendal/blob/fa9e5d1/bindings/nodejs/index.d.ts#L95">index.d.ts:95</a></li></ul></aside></li></ul></section>
<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a
id="list" class="tsd-anchor"></a>
<h3 class="tsd-anchor-link"><span>list</span><a href="#list"
aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler
icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor"
fill="none" stroke-linecap="round" stroke-linejoin="round"><use
href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use
href="#icon-anchor-c"></use></svg></a></h3>
<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class">
@@ -294,7 +294,7 @@
<h5>path: <span class="tsd-signature-type">string</span></h5></li></ul></div>
<h4 class="tsd-returns-title">Returns <span
class="tsd-signature-type">Promise</span><span
class="tsd-signature-symbol"><</span><a href="Lister.html"
class="tsd-signature-type" data-tsd-kind="Class">Lister</a><span
class="tsd-signature-symbol">></span></h4><aside class="tsd-sources">
<ul>
-<li>Defined in <a
href="https://github.com/apache/incubator-opendal/blob/bd01753/bindings/nodejs/index.d.ts#L307">index.d.ts:307</a></li></ul></aside></li></ul></section>
+<li>Defined in <a
href="https://github.com/apache/incubator-opendal/blob/fa9e5d1/bindings/nodejs/index.d.ts#L307">index.d.ts:307</a></li></ul></aside></li></ul></section>
<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a
id="listSync" class="tsd-anchor"></a>
<h3 class="tsd-anchor-link"><span>list<wbr/>Sync</span><a href="#listSync"
aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler
icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor"
fill="none" stroke-linecap="round" stroke-linejoin="round"><use
href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use
href="#icon-anchor-c"></use></svg></a></h3>
<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class">
@@ -317,7 +317,7 @@
<h5>path: <span class="tsd-signature-type">string</span></h5></li></ul></div>
<h4 class="tsd-returns-title">Returns <a href="BlockingLister.html"
class="tsd-signature-type" data-tsd-kind="Class">BlockingLister</a></h4><aside
class="tsd-sources">
<ul>
-<li>Defined in <a
href="https://github.com/apache/incubator-opendal/blob/bd01753/bindings/nodejs/index.d.ts#L330">index.d.ts:330</a></li></ul></aside></li></ul></section>
+<li>Defined in <a
href="https://github.com/apache/incubator-opendal/blob/fa9e5d1/bindings/nodejs/index.d.ts#L330">index.d.ts:330</a></li></ul></aside></li></ul></section>
<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a
id="presignRead" class="tsd-anchor"></a>
<h3 class="tsd-anchor-link"><span>presign<wbr/>Read</span><a
href="#presignRead" aria-label="Permalink" class="tsd-anchor-icon"><svg
class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2"
stroke="currentColor" fill="none" stroke-linecap="round"
stroke-linejoin="round"><use href="#icon-anchor-a"></use><use
href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></h3>
<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class">
@@ -341,7 +341,7 @@
<h5>expires: <span
class="tsd-signature-type">number</span></h5></li></ul></div>
<h4 class="tsd-returns-title">Returns <a
href="../interfaces/PresignedRequest.html" class="tsd-signature-type"
data-tsd-kind="Interface">PresignedRequest</a></h4><aside class="tsd-sources">
<ul>
-<li>Defined in <a
href="https://github.com/apache/incubator-opendal/blob/bd01753/bindings/nodejs/index.d.ts#L346">index.d.ts:346</a></li></ul></aside></li></ul></section>
+<li>Defined in <a
href="https://github.com/apache/incubator-opendal/blob/fa9e5d1/bindings/nodejs/index.d.ts#L346">index.d.ts:346</a></li></ul></aside></li></ul></section>
<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a
id="presignStat" class="tsd-anchor"></a>
<h3 class="tsd-anchor-link"><span>presign<wbr/>Stat</span><a
href="#presignStat" aria-label="Permalink" class="tsd-anchor-icon"><svg
class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2"
stroke="currentColor" fill="none" stroke-linecap="round"
stroke-linejoin="round"><use href="#icon-anchor-a"></use><use
href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></h3>
<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class">
@@ -365,7 +365,7 @@
<h5>expires: <span
class="tsd-signature-type">number</span></h5></li></ul></div>
<h4 class="tsd-returns-title">Returns <a
href="../interfaces/PresignedRequest.html" class="tsd-signature-type"
data-tsd-kind="Interface">PresignedRequest</a></h4><aside class="tsd-sources">
<ul>
-<li>Defined in <a
href="https://github.com/apache/incubator-opendal/blob/bd01753/bindings/nodejs/index.d.ts#L378">index.d.ts:378</a></li></ul></aside></li></ul></section>
+<li>Defined in <a
href="https://github.com/apache/incubator-opendal/blob/fa9e5d1/bindings/nodejs/index.d.ts#L378">index.d.ts:378</a></li></ul></aside></li></ul></section>
<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a
id="presignWrite" class="tsd-anchor"></a>
<h3 class="tsd-anchor-link"><span>presign<wbr/>Write</span><a
href="#presignWrite" aria-label="Permalink" class="tsd-anchor-icon"><svg
class="icon icon-tabler icon-tabler-link" viewBox="0 0 24 24" stroke-width="2"
stroke="currentColor" fill="none" stroke-linecap="round"
stroke-linejoin="round"><use href="#icon-anchor-a"></use><use
href="#icon-anchor-b"></use><use href="#icon-anchor-c"></use></svg></a></h3>
<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class">
@@ -389,7 +389,7 @@
<h5>expires: <span
class="tsd-signature-type">number</span></h5></li></ul></div>
<h4 class="tsd-returns-title">Returns <a
href="../interfaces/PresignedRequest.html" class="tsd-signature-type"
data-tsd-kind="Interface">PresignedRequest</a></h4><aside class="tsd-sources">
<ul>
-<li>Defined in <a
href="https://github.com/apache/incubator-opendal/blob/bd01753/bindings/nodejs/index.d.ts#L362">index.d.ts:362</a></li></ul></aside></li></ul></section>
+<li>Defined in <a
href="https://github.com/apache/incubator-opendal/blob/fa9e5d1/bindings/nodejs/index.d.ts#L362">index.d.ts:362</a></li></ul></aside></li></ul></section>
<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a
id="read" class="tsd-anchor"></a>
<h3 class="tsd-anchor-link"><span>read</span><a href="#read"
aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler
icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor"
fill="none" stroke-linecap="round" stroke-linejoin="round"><use
href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use
href="#icon-anchor-c"></use></svg></a></h3>
<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class">
@@ -410,7 +410,7 @@
<h5>path: <span class="tsd-signature-type">string</span></h5></li></ul></div>
<h4 class="tsd-returns-title">Returns <span
class="tsd-signature-type">Promise</span><span
class="tsd-signature-symbol"><</span><span
class="tsd-signature-type">Buffer</span><span
class="tsd-signature-symbol">></span></h4><aside class="tsd-sources">
<ul>
-<li>Defined in <a
href="https://github.com/apache/incubator-opendal/blob/bd01753/bindings/nodejs/index.d.ts#L122">index.d.ts:122</a></li></ul></aside></li></ul></section>
+<li>Defined in <a
href="https://github.com/apache/incubator-opendal/blob/fa9e5d1/bindings/nodejs/index.d.ts#L122">index.d.ts:122</a></li></ul></aside></li></ul></section>
<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a
id="readSync" class="tsd-anchor"></a>
<h3 class="tsd-anchor-link"><span>read<wbr/>Sync</span><a href="#readSync"
aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler
icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor"
fill="none" stroke-linecap="round" stroke-linejoin="round"><use
href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use
href="#icon-anchor-c"></use></svg></a></h3>
<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class">
@@ -431,7 +431,7 @@
<h5>path: <span class="tsd-signature-type">string</span></h5></li></ul></div>
<h4 class="tsd-returns-title">Returns <span
class="tsd-signature-type">Buffer</span></h4><aside class="tsd-sources">
<ul>
-<li>Defined in <a
href="https://github.com/apache/incubator-opendal/blob/bd01753/bindings/nodejs/index.d.ts#L131">index.d.ts:131</a></li></ul></aside></li></ul></section>
+<li>Defined in <a
href="https://github.com/apache/incubator-opendal/blob/fa9e5d1/bindings/nodejs/index.d.ts#L131">index.d.ts:131</a></li></ul></aside></li></ul></section>
<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a
id="remove" class="tsd-anchor"></a>
<h3 class="tsd-anchor-link"><span>remove</span><a href="#remove"
aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler
icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor"
fill="none" stroke-linecap="round" stroke-linejoin="round"><use
href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use
href="#icon-anchor-c"></use></svg></a></h3>
<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class">
@@ -457,7 +457,7 @@
<h5>paths: <span class="tsd-signature-type">string</span><span
class="tsd-signature-symbol">[]</span></h5></li></ul></div>
<h4 class="tsd-returns-title">Returns <span
class="tsd-signature-type">Promise</span><span
class="tsd-signature-symbol"><</span><span
class="tsd-signature-type">void</span><span
class="tsd-signature-symbol">></span></h4><aside class="tsd-sources">
<ul>
-<li>Defined in <a
href="https://github.com/apache/incubator-opendal/blob/bd01753/bindings/nodejs/index.d.ts#L272">index.d.ts:272</a></li></ul></aside></li></ul></section>
+<li>Defined in <a
href="https://github.com/apache/incubator-opendal/blob/fa9e5d1/bindings/nodejs/index.d.ts#L272">index.d.ts:272</a></li></ul></aside></li></ul></section>
<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a
id="removeAll" class="tsd-anchor"></a>
<h3 class="tsd-anchor-link"><span>remove<wbr/>All</span><a href="#removeAll"
aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler
icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor"
fill="none" stroke-linecap="round" stroke-linejoin="round"><use
href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use
href="#icon-anchor-c"></use></svg></a></h3>
<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class">
@@ -483,7 +483,7 @@
<h5>path: <span class="tsd-signature-type">string</span></h5></li></ul></div>
<h4 class="tsd-returns-title">Returns <span
class="tsd-signature-type">Promise</span><span
class="tsd-signature-symbol"><</span><span
class="tsd-signature-type">void</span><span
class="tsd-signature-symbol">></span></h4><aside class="tsd-sources">
<ul>
-<li>Defined in <a
href="https://github.com/apache/incubator-opendal/blob/bd01753/bindings/nodejs/index.d.ts#L284">index.d.ts:284</a></li></ul></aside></li></ul></section>
+<li>Defined in <a
href="https://github.com/apache/incubator-opendal/blob/fa9e5d1/bindings/nodejs/index.d.ts#L284">index.d.ts:284</a></li></ul></aside></li></ul></section>
<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a
id="rename" class="tsd-anchor"></a>
<h3 class="tsd-anchor-link"><span>rename</span><a href="#rename"
aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler
icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor"
fill="none" stroke-linecap="round" stroke-linejoin="round"><use
href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use
href="#icon-anchor-c"></use></svg></a></h3>
<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class">
@@ -507,7 +507,7 @@
<h5>to: <span class="tsd-signature-type">string</span></h5></li></ul></div>
<h4 class="tsd-returns-title">Returns <span
class="tsd-signature-type">Promise</span><span
class="tsd-signature-symbol"><</span><span
class="tsd-signature-type">void</span><span
class="tsd-signature-symbol">></span></h4><aside class="tsd-sources">
<ul>
-<li>Defined in <a
href="https://github.com/apache/incubator-opendal/blob/bd01753/bindings/nodejs/index.d.ts#L182">index.d.ts:182</a></li></ul></aside></li></ul></section>
+<li>Defined in <a
href="https://github.com/apache/incubator-opendal/blob/fa9e5d1/bindings/nodejs/index.d.ts#L182">index.d.ts:182</a></li></ul></aside></li></ul></section>
<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a
id="renameSync" class="tsd-anchor"></a>
<h3 class="tsd-anchor-link"><span>rename<wbr/>Sync</span><a href="#renameSync"
aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler
icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor"
fill="none" stroke-linecap="round" stroke-linejoin="round"><use
href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use
href="#icon-anchor-c"></use></svg></a></h3>
<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class">
@@ -531,7 +531,7 @@
<h5>to: <span class="tsd-signature-type">string</span></h5></li></ul></div>
<h4 class="tsd-returns-title">Returns <span
class="tsd-signature-type">void</span></h4><aside class="tsd-sources">
<ul>
-<li>Defined in <a
href="https://github.com/apache/incubator-opendal/blob/bd01753/bindings/nodejs/index.d.ts#L193">index.d.ts:193</a></li></ul></aside></li></ul></section>
+<li>Defined in <a
href="https://github.com/apache/incubator-opendal/blob/fa9e5d1/bindings/nodejs/index.d.ts#L193">index.d.ts:193</a></li></ul></aside></li></ul></section>
<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a
id="scan" class="tsd-anchor"></a>
<h3 class="tsd-anchor-link"><span>scan</span><a href="#scan"
aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler
icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor"
fill="none" stroke-linecap="round" stroke-linejoin="round"><use
href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use
href="#icon-anchor-c"></use></svg></a></h3>
<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class">
@@ -554,7 +554,7 @@
<h5>path: <span class="tsd-signature-type">string</span></h5></li></ul></div>
<h4 class="tsd-returns-title">Returns <span
class="tsd-signature-type">Promise</span><span
class="tsd-signature-symbol"><</span><a href="Lister.html"
class="tsd-signature-type" data-tsd-kind="Class">Lister</a><span
class="tsd-signature-symbol">></span></h4><aside class="tsd-sources">
<ul>
-<li>Defined in <a
href="https://github.com/apache/incubator-opendal/blob/bd01753/bindings/nodejs/index.d.ts#L216">index.d.ts:216</a></li></ul></aside></li></ul></section>
+<li>Defined in <a
href="https://github.com/apache/incubator-opendal/blob/fa9e5d1/bindings/nodejs/index.d.ts#L216">index.d.ts:216</a></li></ul></aside></li></ul></section>
<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a
id="scanSync" class="tsd-anchor"></a>
<h3 class="tsd-anchor-link"><span>scan<wbr/>Sync</span><a href="#scanSync"
aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler
icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor"
fill="none" stroke-linecap="round" stroke-linejoin="round"><use
href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use
href="#icon-anchor-c"></use></svg></a></h3>
<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class">
@@ -577,7 +577,7 @@
<h5>path: <span class="tsd-signature-type">string</span></h5></li></ul></div>
<h4 class="tsd-returns-title">Returns <a href="BlockingLister.html"
class="tsd-signature-type" data-tsd-kind="Class">BlockingLister</a></h4><aside
class="tsd-sources">
<ul>
-<li>Defined in <a
href="https://github.com/apache/incubator-opendal/blob/bd01753/bindings/nodejs/index.d.ts#L239">index.d.ts:239</a></li></ul></aside></li></ul></section>
+<li>Defined in <a
href="https://github.com/apache/incubator-opendal/blob/fa9e5d1/bindings/nodejs/index.d.ts#L239">index.d.ts:239</a></li></ul></aside></li></ul></section>
<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a
id="stat" class="tsd-anchor"></a>
<h3 class="tsd-anchor-link"><span>stat</span><a href="#stat"
aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler
icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor"
fill="none" stroke-linecap="round" stroke-linejoin="round"><use
href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use
href="#icon-anchor-c"></use></svg></a></h3>
<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class">
@@ -608,7 +608,7 @@
<h5>path: <span class="tsd-signature-type">string</span></h5></li></ul></div>
<h4 class="tsd-returns-title">Returns <span
class="tsd-signature-type">Promise</span><span
class="tsd-signature-symbol"><</span><a href="Metadata.html"
class="tsd-signature-type" data-tsd-kind="Class">Metadata</a><span
class="tsd-signature-symbol">></span></h4><aside class="tsd-sources">
<ul>
-<li>Defined in <a
href="https://github.com/apache/incubator-opendal/blob/bd01753/bindings/nodejs/index.d.ts#L54">index.d.ts:54</a></li></ul></aside></li></ul></section>
+<li>Defined in <a
href="https://github.com/apache/incubator-opendal/blob/fa9e5d1/bindings/nodejs/index.d.ts#L54">index.d.ts:54</a></li></ul></aside></li></ul></section>
<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a
id="statSync" class="tsd-anchor"></a>
<h3 class="tsd-anchor-link"><span>stat<wbr/>Sync</span><a href="#statSync"
aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler
icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor"
fill="none" stroke-linecap="round" stroke-linejoin="round"><use
href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use
href="#icon-anchor-c"></use></svg></a></h3>
<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class">
@@ -629,7 +629,7 @@
<h5>path: <span class="tsd-signature-type">string</span></h5></li></ul></div>
<h4 class="tsd-returns-title">Returns <a href="Metadata.html"
class="tsd-signature-type" data-tsd-kind="Class">Metadata</a></h4><aside
class="tsd-sources">
<ul>
-<li>Defined in <a
href="https://github.com/apache/incubator-opendal/blob/bd01753/bindings/nodejs/index.d.ts#L66">index.d.ts:66</a></li></ul></aside></li></ul></section>
+<li>Defined in <a
href="https://github.com/apache/incubator-opendal/blob/fa9e5d1/bindings/nodejs/index.d.ts#L66">index.d.ts:66</a></li></ul></aside></li></ul></section>
<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a
id="write" class="tsd-anchor"></a>
<h3 class="tsd-anchor-link"><span>write</span><a href="#write"
aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler
icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor"
fill="none" stroke-linecap="round" stroke-linejoin="round"><use
href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use
href="#icon-anchor-c"></use></svg></a></h3>
<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class">
@@ -652,7 +652,7 @@
<h5>content: <span class="tsd-signature-type">string</span><span
class="tsd-signature-symbol"> | </span><span
class="tsd-signature-type">Buffer</span></h5></li></ul></div>
<h4 class="tsd-returns-title">Returns <span
class="tsd-signature-type">Promise</span><span
class="tsd-signature-symbol"><</span><span
class="tsd-signature-type">void</span><span
class="tsd-signature-symbol">></span></h4><aside class="tsd-sources">
<ul>
-<li>Defined in <a
href="https://github.com/apache/incubator-opendal/blob/bd01753/bindings/nodejs/index.d.ts#L142">index.d.ts:142</a></li></ul></aside></li></ul></section>
+<li>Defined in <a
href="https://github.com/apache/incubator-opendal/blob/fa9e5d1/bindings/nodejs/index.d.ts#L142">index.d.ts:142</a></li></ul></aside></li></ul></section>
<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a
id="writeSync" class="tsd-anchor"></a>
<h3 class="tsd-anchor-link"><span>write<wbr/>Sync</span><a href="#writeSync"
aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler
icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor"
fill="none" stroke-linecap="round" stroke-linejoin="round"><use
href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use
href="#icon-anchor-c"></use></svg></a></h3>
<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class">
@@ -675,7 +675,7 @@
<h5>content: <span class="tsd-signature-type">string</span><span
class="tsd-signature-symbol"> | </span><span
class="tsd-signature-type">Buffer</span></h5></li></ul></div>
<h4 class="tsd-returns-title">Returns <span
class="tsd-signature-type">void</span></h4><aside class="tsd-sources">
<ul>
-<li>Defined in <a
href="https://github.com/apache/incubator-opendal/blob/bd01753/bindings/nodejs/index.d.ts#L153">index.d.ts:153</a></li></ul></aside></li></ul></section></section></div>
+<li>Defined in <a
href="https://github.com/apache/incubator-opendal/blob/fa9e5d1/bindings/nodejs/index.d.ts#L153">index.d.ts:153</a></li></ul></aside></li></ul></section></section></div>
<div class="col-4 col-menu menu-sticky-wrap menu-highlight">
<div class="tsd-navigation settings">
<details class="tsd-index-accordion"><summary class="tsd-accordion-summary">
diff --git a/docs/nodejs/interfaces/PresignedRequest.html
b/docs/nodejs/interfaces/PresignedRequest.html
index 4fdf1d3b..7c50882f 100644
--- a/docs/nodejs/interfaces/PresignedRequest.html
+++ b/docs/nodejs/interfaces/PresignedRequest.html
@@ -20,7 +20,7 @@
<ul class="tsd-hierarchy">
<li><span class="target">PresignedRequest</span></li></ul></section><aside
class="tsd-sources">
<ul>
-<li>Defined in <a
href="https://github.com/apache/incubator-opendal/blob/bd01753/bindings/nodejs/index.d.ts#L25">index.d.ts:25</a></li></ul></aside>
+<li>Defined in <a
href="https://github.com/apache/incubator-opendal/blob/fa9e5d1/bindings/nodejs/index.d.ts#L25">index.d.ts:25</a></li></ul></aside>
<section class="tsd-panel-group tsd-index-group">
<section class="tsd-panel tsd-index-panel">
<details class="tsd-index-content tsd-index-accordion" open><summary
class="tsd-accordion-summary tsd-index-summary">
@@ -40,21 +40,21 @@
<div class="tsd-comment tsd-typography"><p>HTTP headers of this request.</p>
</div><aside class="tsd-sources">
<ul>
-<li>Defined in <a
href="https://github.com/apache/incubator-opendal/blob/bd01753/bindings/nodejs/index.d.ts#L31">index.d.ts:31</a></li></ul></aside></section>
+<li>Defined in <a
href="https://github.com/apache/incubator-opendal/blob/fa9e5d1/bindings/nodejs/index.d.ts#L31">index.d.ts:31</a></li></ul></aside></section>
<section class="tsd-panel tsd-member tsd-kind-property
tsd-parent-kind-interface"><a id="method" class="tsd-anchor"></a>
<h3 class="tsd-anchor-link"><span>method</span><a href="#method"
aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler
icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor"
fill="none" stroke-linecap="round" stroke-linejoin="round"><use
href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use
href="#icon-anchor-c"></use></svg></a></h3>
<div class="tsd-signature">method<span class="tsd-signature-symbol">:</span>
<span class="tsd-signature-type">string</span></div>
<div class="tsd-comment tsd-typography"><p>HTTP method of this request.</p>
</div><aside class="tsd-sources">
<ul>
-<li>Defined in <a
href="https://github.com/apache/incubator-opendal/blob/bd01753/bindings/nodejs/index.d.ts#L27">index.d.ts:27</a></li></ul></aside></section>
+<li>Defined in <a
href="https://github.com/apache/incubator-opendal/blob/fa9e5d1/bindings/nodejs/index.d.ts#L27">index.d.ts:27</a></li></ul></aside></section>
<section class="tsd-panel tsd-member tsd-kind-property
tsd-parent-kind-interface"><a id="url" class="tsd-anchor"></a>
<h3 class="tsd-anchor-link"><span>url</span><a href="#url"
aria-label="Permalink" class="tsd-anchor-icon"><svg class="icon icon-tabler
icon-tabler-link" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor"
fill="none" stroke-linecap="round" stroke-linejoin="round"><use
href="#icon-anchor-a"></use><use href="#icon-anchor-b"></use><use
href="#icon-anchor-c"></use></svg></a></h3>
<div class="tsd-signature">url<span class="tsd-signature-symbol">:</span>
<span class="tsd-signature-type">string</span></div>
<div class="tsd-comment tsd-typography"><p>URL of this request.</p>
</div><aside class="tsd-sources">
<ul>
-<li>Defined in <a
href="https://github.com/apache/incubator-opendal/blob/bd01753/bindings/nodejs/index.d.ts#L29">index.d.ts:29</a></li></ul></aside></section></section></div>
+<li>Defined in <a
href="https://github.com/apache/incubator-opendal/blob/fa9e5d1/bindings/nodejs/index.d.ts#L29">index.d.ts:29</a></li></ul></aside></section></section></div>
<div class="col-4 col-menu menu-sticky-wrap menu-highlight">
<div class="tsd-navigation settings">
<details class="tsd-index-accordion"><summary class="tsd-accordion-summary">
diff --git a/docs/python/opendal.html b/docs/python/opendal.html
index a72a7e00..78586568 100644
--- a/docs/python/opendal.html
+++ b/docs/python/opendal.html
@@ -156,10 +156,10 @@
<a class="class" href="#Metadata">Metadata</a>
<ul class="memberlist">
<li>
- <a class="variable"
href="#Metadata.mode">mode</a>
+ <a class="variable"
href="#Metadata.content_length">content_length</a>
</li>
<li>
- <a class="variable"
href="#Metadata.content_length">content_length</a>
+ <a class="variable"
href="#Metadata.etag">etag</a>
</li>
<li>
<a class="variable"
href="#Metadata.content_md5">content_md5</a>
@@ -168,7 +168,7 @@
<a class="variable"
href="#Metadata.content_type">content_type</a>
</li>
<li>
- <a class="variable"
href="#Metadata.etag">etag</a>
+ <a class="variable"
href="#Metadata.mode">mode</a>
</li>
</ul>
@@ -852,28 +852,28 @@ The default value for whence is <code>SEEK_SET</code>.
Values for <code>whence</
- <div id="Metadata.mode" class="classattr">
+ <div id="Metadata.content_length"
class="classattr">
<div class="attr variable">
- <span class="name">mode</span><span class="annotation">: <a
href="#EntryMode">opendal.EntryMode</a></span>
+ <span class="name">content_length</span><span class="annotation">:
int</span>
</div>
- <a class="headerlink" href="#Metadata.mode"></a>
+ <a class="headerlink" href="#Metadata.content_length"></a>
- <div class="docstring"><p>mode represent this entry's mode.</p>
+ <div class="docstring"><p>Content length of this entry.</p>
</div>
</div>
- <div id="Metadata.content_length"
class="classattr">
+ <div id="Metadata.etag" class="classattr">
<div class="attr variable">
- <span class="name">content_length</span><span class="annotation">:
int</span>
+ <span class="name">etag</span><span class="annotation">:
Optional[str]</span>
</div>
- <a class="headerlink" href="#Metadata.content_length"></a>
+ <a class="headerlink" href="#Metadata.etag"></a>
- <div class="docstring"><p>Content length of this entry.</p>
+ <div class="docstring"><p>ETag of this entry.</p>
</div>
@@ -904,15 +904,15 @@ The default value for whence is <code>SEEK_SET</code>.
Values for <code>whence</
</div>
- <div id="Metadata.etag" class="classattr">
+ <div id="Metadata.mode" class="classattr">
<div class="attr variable">
- <span class="name">etag</span><span class="annotation">:
Optional[str]</span>
+ <span class="name">mode</span><span class="annotation">: <a
href="#EntryMode">opendal.EntryMode</a></span>
</div>
- <a class="headerlink" href="#Metadata.etag"></a>
+ <a class="headerlink" href="#Metadata.mode"></a>
- <div class="docstring"><p>ETag of this entry.</p>
+ <div class="docstring"><p>mode represent this entry's mode.</p>
</div>
diff --git a/docs/python/search.js b/docs/python/search.js
index 78d5a5d6..9c187838 100644
--- a/docs/python/search.js
+++ b/docs/python/search.js
@@ -1,6 +1,6 @@
window.pdocSearch = (function(){
/** elasticlunr - http://weixsong.github.io * Copyright (C) 2017 Oliver
Nightingale * Copyright (C) 2017 Wei Song * MIT Licensed */!function(){function
e(e){if(null===e||"object"!=typeof e)return e;var t=e.constructor();for(var n
in e)e.hasOwnProperty(n)&&(t[n]=e[n]);return t}var t=function(e){var n=new
t.Index;return
n.pipeline.add(t.trimmer,t.stopWordFilter,t.stemmer),e&&e.call(n,n),n};t.version="0.9.5",lunr=t,t.utils={},t.utils.warn=function(e){return
function(t){e.console&&console.wa [...]
- /** pdoc search index */const docs = {"version": "0.9.5", "fields":
["qualname", "fullname", "annotation", "default_value", "signature", "bases",
"doc"], "ref": "fullname", "documentStore": {"docs": {"opendal": {"fullname":
"opendal", "modulename": "opendal", "kind": "module", "doc": "<p>OpenDAL Python
binding</p>\n\n<h2 id=\"installation\">Installation</h2>\n\n<div
class=\"pdoc-code codehilite\">\n<pre><span></span><code>pip<span class=\"w\">
</span>install<span class=\"w\"> </span> [...]
+ /** pdoc search index */const docs = {"version": "0.9.5", "fields":
["qualname", "fullname", "annotation", "default_value", "signature", "bases",
"doc"], "ref": "fullname", "documentStore": {"docs": {"opendal": {"fullname":
"opendal", "modulename": "opendal", "kind": "module", "doc": "<p>OpenDAL Python
binding</p>\n\n<h2 id=\"installation\">Installation</h2>\n\n<div
class=\"pdoc-code codehilite\">\n<pre><span></span><code>pip<span class=\"w\">
</span>install<span class=\"w\"> </span> [...]
// mirrored in build-search-index.js (part 1)
// Also split on html tags. this is a cheap heuristic, but good enough.
diff --git a/docs/rust/opendal/docs/rfcs/index.html
b/docs/rust/opendal/docs/rfcs/index.html
index b77147db..1a4389a0 100644
--- a/docs/rust/opendal/docs/rfcs/index.html
+++ b/docs/rust/opendal/docs/rfcs/index.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta
name="viewport" content="width=device-width, initial-scale=1.0"><meta
name="generator" content="rustdoc"><meta name="description" content="RFCs power
OpenDAL’s development."><title>opendal::docs::rfcs - Rust</title><link
rel="preload" as="font" type="font/woff2" crossorigin
href="../../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link
rel="preload" as="font" type="font/woff2" crossorigin href="../../../ [...]
+<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta
name="viewport" content="width=device-width, initial-scale=1.0"><meta
name="generator" content="rustdoc"><meta name="description" content="RFCs power
OpenDAL’s development."><title>opendal::docs::rfcs - Rust</title><link
rel="preload" as="font" type="font/woff2" crossorigin
href="../../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link
rel="preload" as="font" type="font/woff2" crossorigin href="../../../ [...]
<p>To add new features and big refactors:</p>
<ul>
<li>Start a new RFCs with the template <a href="rfc_0000_example/index.html"
title="mod
opendal::docs::rfcs::rfc_0000_example"><code>rfc_0000_example</code></a>.</li>
@@ -11,4 +11,4 @@
<li>Start a pre-propose in <a
href="https://github.com/apache/incubator-opendal/discussions/categories/ideas">discussion</a>
to communicate quickly.</li>
<li>The proposer of RFC may not be the same person as the implementor. Try to
include enough information in RFC itself.</li>
</ul>
-</div></details><h2 id="modules" class="small-section-header"><a
href="#modules">Modules</a></h2><ul class="item-table"><li><div
class="item-name"><a class="mod" href="rfc_0000_example/index.html" title="mod
opendal::docs::rfcs::rfc_0000_example">rfc_0000_example</a></div><div
class="desc docblock-short">Proposal Name: (fill me in with a unique ident,
<code>my_awesome_feature</code>)Start Date: (fill me in with today’s date,
YYYY-MM-DD)RFC PR: <a href="https://github.com/apache/incubator [...]
\ No newline at end of file
+</div></details><h2 id="modules" class="small-section-header"><a
href="#modules">Modules</a></h2><ul class="item-table"><li><div
class="item-name"><a class="mod" href="rfc_0000_example/index.html" title="mod
opendal::docs::rfcs::rfc_0000_example">rfc_0000_example</a></div><div
class="desc docblock-short">Proposal Name: (fill me in with a unique ident,
<code>my_awesome_feature</code>)Start Date: (fill me in with today’s date,
YYYY-MM-DD)RFC PR: <a href="https://github.com/apache/incubator [...]
\ No newline at end of file
diff --git a/docs/rust/opendal/docs/rfcs/rfc_2083_writer_sink_api/index.html
b/docs/rust/opendal/docs/rfcs/rfc_2083_writer_sink_api/index.html
new file mode 100644
index 00000000..4e1cdff3
--- /dev/null
+++ b/docs/rust/opendal/docs/rfcs/rfc_2083_writer_sink_api/index.html
@@ -0,0 +1,73 @@
+<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta
name="viewport" content="width=device-width, initial-scale=1.0"><meta
name="generator" content="rustdoc"><meta name="description" content="Proposal
Name: `writer_sink_api`Start Date: 2023-04-23RFC PR:
apache/incubator-opendal#2083Tracking Issue:
apache/incubator-opendal#2084Summary"><title>opendal::docs::rfcs::rfc_2083_writer_sink_api
- Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin
href="../../../. [...]
+<li>Proposal Name: <code>writer_sink_api</code></li>
+<li>Start Date: 2023-04-23</li>
+<li>RFC PR: <a
href="https://github.com/apache/incubator-opendal/pull/2083">apache/incubator-opendal#2083</a></li>
+<li>Tracking Issue: <a
href="https://github.com/apache/incubator-opendal/issues/2084">apache/incubator-opendal#2084</a></li>
+</ul>
+<h2 id="summary"><a href="#summary">Summary</a></h2>
+<p>Include a <code>sink</code> API within the <code>Writer</code> to enable
streaming writing.</p>
+<h2 id="motivation"><a href="#motivation">Motivation</a></h2>
+<p>OpenDAL does not support streaming data uploads. Users must first load the
data into memory and then send it to the <code>writer</code>.</p>
+
+<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span
class="kw">let </span>bs = balabala();
+w.write(bs).<span class="kw">await</span><span class="question-mark">?</span>;
+<span class="kw">let </span>bs = daladala();
+w.write(bs).<span class="kw">await</span><span class="question-mark">?</span>;
+...
+w.close().<span class="kw">await</span><span
class="question-mark">?</span>;</code></pre></div>
+<p>There are two main drawbacks to OpenDAL:</p>
+<ul>
+<li>high memory usage, as reported in issue #1821 on GitHub</li>
+<li>low performance due to the need to buffer user data before sending it over
the network.</li>
+</ul>
+<p>To address this issue, it would be beneficial for OpenDAL to provide an API
that allows users to pass a stream or reader directly into the writer.</p>
+<h2 id="guide-level-explanation"><a
href="#guide-level-explanation">Guide-level explanation</a></h2>
+<p>I propose to add the following API to <code>Writer</code>:</p>
+
+<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span
class="kw">impl </span>Writer {
+ <span class="kw">pub async fn </span>copy_from<R>(<span
class="kw-2">&mut </span><span class="self">self</span>, size: u64, r: R)
-> <span class="prelude-ty">Result</span><()>
+ <span class="kw">where
+ </span>R: futures::AsyncRead + Send + Sync + <span
class="lifetime">'static</span>;
+
+ <span class="kw">pub async fn </span>pipe_from<S>(<span
class="kw-2">&mut </span><span class="self">self</span>, size: u64, s: S)
-> <span class="prelude-ty">Result</span><()>
+ <span class="kw">where
+ </span>S: futures::TryStream + Send + Sync + <span
class="lifetime">'static
+ </span>Bytes: From<S::Ok>;
+}</code></pre></div>
+<p>Users can now upload data in a streaming way:</p>
+
+<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span
class="comment">// Start writing the 5 TiB file.
+</span><span class="kw">let </span>w = op.writer_with(
+ OpWrite::default()
+ .with_content_length(<span class="number">5 </span>* <span
class="number">1024 </span>* <span class="number">1024 </span>* <span
class="number">1024 </span>* <span class="number">1024</span>));
+
+<span class="kw">let </span>r = balabala();
+<span class="comment">// Send to network directly without in-memory buffer.
+</span>w.copy_from(size, r).<span class="kw">await</span><span
class="question-mark">?</span>;
+<span class="comment">// repeat...
+</span>...
+
+<span class="comment">// Close the write once we are ready!
+</span>w.close().<span class="kw">await</span><span
class="question-mark">?</span>;</code></pre></div>
+<p>The underlying services will handle this stream in the most efficient way
possible.</p>
+<h2 id="reference-level-explanation"><a
href="#reference-level-explanation">Reference-level explanation</a></h2>
+<p>To support <code>Wrtier::copy_from</code> and
<code>Writer::pipe_from</code>, we will add a new API called <code>sink</code>
inside <code>oio::Writer</code>:</p>
+
+<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span
class="attr">#[async_trait]
+</span><span class="kw">pub trait </span>Write: Unpin + Send + Sync {
+ <span class="kw">async fn </span>sink(<span class="kw-2">&mut
</span><span class="self">self</span>, size: u64, s: Box<<span
class="kw">dyn </span>futures::TryStream<<span
class="prelude-val">Ok</span>=Bytes> + Send + Sync>) -> <span
class="prelude-ty">Result</span><()>;
+}</code></pre></div>
+<p>OpenDAL converts the user input reader and stream into a byte stream for
<code>oio::Write</code>. Services that support streaming upload natively can
directly pass the stream. If not, they can use <code>write</code> repeatedly to
write the entire stream.</p>
+<h2 id="drawbacks"><a href="#drawbacks">Drawbacks</a></h2>
+<p>None.</p>
+<h2 id="rationale-and-alternatives"><a
href="#rationale-and-alternatives">Rationale and alternatives</a></h2><h3
id="whats-the-different-of-opwritecontent_length-and-sink-size"><a
href="#whats-the-different-of-opwritecontent_length-and-sink-size">What’s the
different of <code>OpWrite::content_length</code> and <code>sink</code>
size?</a></h3>
+<p>The <code>OpWrite::content_length</code> parameter specifies the total
length of the file to be written, while the <code>size</code> argument in the
<code>sink</code> API indicates the size of the reader or stream provided.
Certain services may optimize by writing all content in a single request if
<code>content_length</code> is the same with given <code>size</code>.</p>
+<h2 id="prior-art"><a href="#prior-art">Prior art</a></h2>
+<p>None</p>
+<h2 id="unresolved-questions"><a href="#unresolved-questions">Unresolved
questions</a></h2>
+<p>None</p>
+<h2 id="future-possibilities"><a href="#future-possibilities">Future
possibilities</a></h2><h3 id="retry-for-the-sink-api"><a
href="#retry-for-the-sink-api">Retry for the <code>sink</code> API</a></h3>
+<p>It’s impossible to retry the <code>sink</code> API itself, but we can
provide a wrapper to retry the stream’s call of <code>next</code>. If we met a
retryable error, we can call <code>next</code> again by crate like
<code>backon</code>.</p>
+<h3 id="blocking-support-for-sink"><a
href="#blocking-support-for-sink">Blocking support for sink</a></h3>
+<p>We will add async support first.</p>
+</div></details></section></div></main><div id="rustdoc-vars"
data-root-path="../../../../" data-static-root-path="../../../../static.files/"
data-current-crate="opendal" data-themes="" data-resource-suffix=""
data-rustdoc-version="1.69.0 (84c898d65 2023-04-16)"
data-search-js="search-8a59a8356673ec1f.js"
data-settings-js="settings-f0c5c39777a9a2f6.js"
data-settings-css="settings-0bcba95ff279c1db.css" ></div></body></html>
\ No newline at end of file
diff --git
a/docs/rust/opendal/docs/rfcs/rfc_2083_writer_sink_api/sidebar-items.js
b/docs/rust/opendal/docs/rfcs/rfc_2083_writer_sink_api/sidebar-items.js
new file mode 100644
index 00000000..5244ce01
--- /dev/null
+++ b/docs/rust/opendal/docs/rfcs/rfc_2083_writer_sink_api/sidebar-items.js
@@ -0,0 +1 @@
+window.SIDEBAR_ITEMS = {};
\ No newline at end of file
diff --git a/docs/rust/opendal/docs/rfcs/sidebar-items.js
b/docs/rust/opendal/docs/rfcs/sidebar-items.js
index a0a83799..8fa8f9bb 100644
--- a/docs/rust/opendal/docs/rfcs/sidebar-items.js
+++ b/docs/rust/opendal/docs/rfcs/sidebar-items.js
@@ -1 +1 @@
-window.SIDEBAR_ITEMS =
{"mod":["rfc_0000_example","rfc_0041_object_native_api","rfc_0044_error_handle","rfc_0057_auto_region","rfc_0069_object_stream","rfc_0090_limited_reader","rfc_0112_path_normalization","rfc_0191_async_streaming_io","rfc_0203_remove_credential","rfc_0221_create_dir","rfc_0247_retryable_error","rfc_0293_object_id","rfc_0337_dir_entry","rfc_0409_accessor_capabilities","rfc_0413_presign","rfc_0423_command_line_interface","rfc_0429_init_from_iter","rfc_0438_multipart","r
[...]
\ No newline at end of file
+window.SIDEBAR_ITEMS =
{"mod":["rfc_0000_example","rfc_0041_object_native_api","rfc_0044_error_handle","rfc_0057_auto_region","rfc_0069_object_stream","rfc_0090_limited_reader","rfc_0112_path_normalization","rfc_0191_async_streaming_io","rfc_0203_remove_credential","rfc_0221_create_dir","rfc_0247_retryable_error","rfc_0293_object_id","rfc_0337_dir_entry","rfc_0409_accessor_capabilities","rfc_0413_presign","rfc_0423_command_line_interface","rfc_0429_init_from_iter","rfc_0438_multipart","r
[...]
\ No newline at end of file
diff --git a/docs/rust/search-index.js b/docs/rust/search-index.js
index bade92ee..edc18fa4 100644
--- a/docs/rust/search-index.js
+++ b/docs/rust/search-index.js
@@ -1,5 +1,5 @@
var searchIndex = JSON.parse('{\
-"opendal":{"doc":"OpenDAL is the Open Data Access Layer to
<strong>freely</strong> access
…","t":"QNNNDDDDIDNNNNNNNNNNNNDEDENNNNNNNNNNNNNDNNDENNNNNDDDNNNNDNGNNSENNNNNNNDLMMMLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLKLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLMLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLALLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLKLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLALL
[...]
+"opendal":{"doc":"OpenDAL is the Open Data Access Layer to
<strong>freely</strong> access
…","t":"QNNNDDDDIDNNNNNNNNNNNNDEDENNNNNNNNNNNNNDNNDENNNNNDDDNNNNDNGNNSENNNNNNNDLMMMLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLKLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLMLLMLLLLLLMLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLALLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLKLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLALL
[...]
}');
if (typeof window !== 'undefined' && window.initSearch)
{window.initSearch(searchIndex)};
if (typeof exports !== 'undefined') {exports.searchIndex = searchIndex};
diff --git a/docs/rust/src/opendal/docs/rfcs/mod.rs.html
b/docs/rust/src/opendal/docs/rfcs/mod.rs.html
index 92f949e3..442245a9 100644
--- a/docs/rust/src/opendal/docs/rfcs/mod.rs.html
+++ b/docs/rust/src/opendal/docs/rfcs/mod.rs.html
@@ -133,6 +133,9 @@
<a href="#133" id="133">133</a>
<a href="#134" id="134">134</a>
<a href="#135" id="135">135</a>
+<a href="#136" id="136">136</a>
+<a href="#137" id="137">137</a>
+<a href="#138" id="138">138</a>
</pre><pre class="rust"><code><span class="comment">// Licensed to the Apache
Software Foundation (ASF) under one
// or more contributor license agreements. See the NOTICE file
// distributed with this work for additional information
@@ -268,5 +271,8 @@
<span class="attr">#[doc = <span class="macro">include_str!</span>(<span
class="string">"1735_operation_extension.md"</span>)]
</span><span class="kw">pub mod </span>rfc_1735_operation_extension {}
+
+<span class="attr">#[doc = <span class="macro">include_str!</span>(<span
class="string">"2083_writer_sink_api.md"</span>)]
+</span><span class="kw">pub mod </span>rfc_2083_writer_sink_api {}
</code></pre></div>
</section></main><div id="rustdoc-vars" data-root-path="../../../../"
data-static-root-path="../../../../static.files/" data-current-crate="opendal"
data-themes="" data-resource-suffix="" data-rustdoc-version="1.69.0 (84c898d65
2023-04-16)" data-search-js="search-8a59a8356673ec1f.js"
data-settings-js="settings-f0c5c39777a9a2f6.js"
data-settings-css="settings-0bcba95ff279c1db.css" ></div></body></html>
\ No newline at end of file
diff --git a/docs/vision/index.html b/docs/vision/index.html
index 0a9e528e..1bd9c2a7 100644
--- a/docs/vision/index.html
+++ b/docs/vision/index.html
@@ -5,13 +5,13 @@
<meta name="generator" content="Docusaurus v2.3.1">
<title data-rh="true">Vision | Apache OpenDAL</title><meta data-rh="true"
name="viewport" content="width=device-width,initial-scale=1"><meta
data-rh="true" name="twitter:card" content="summary_large_image"><meta
data-rh="true" property="og:url"
content="https://opendal.apache.org/docs/vision"><meta data-rh="true"
name="docusaurus_locale" content="en"><meta data-rh="true"
name="docsearch:language" content="en"><meta data-rh="true"
name="docusaurus_version" content="current"><meta data-rh= [...]
<link rel="alternate" type="application/atom+xml" href="/blog/atom.xml"
title="Apache OpenDAL Atom Feed"><link rel="stylesheet"
href="/assets/css/styles.8610ae2e.css">
-<link rel="preload" href="/assets/js/runtime~main.0a0c2b17.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.ca29ba4c.js" as="script">
<link rel="preload" href="/assets/js/main.5b9603d6.js" as="script">
</head>
<body class="navigation-with-keyboard">
<script>!function(){function
t(t){document.documentElement.setAttribute("data-theme",t)}var e=function(){var
t=null;try{t=localStorage.getItem("theme")}catch(t){}return
t}();t(null!==e?e:"light")}()</script><div id="__docusaurus">
-<div role="region" aria-label="Skip to main content"><a
class="skipToContent_fXgn" href="#docusaurus_skipToContent_fallback">Skip to
main content</a></div><nav aria-label="Main" class="navbar
navbar--fixed-top"><div class="navbar__inner"><div
class="navbar__items"><button aria-label="Toggle navigation bar"
aria-expanded="false" class="navbar__toggle clean-btn" type="button"><svg
width="30" height="30" viewBox="0 0 30 30" aria-hidden="true"><path
stroke="currentColor" stroke-linecap="roun [...]
-<script src="/assets/js/runtime~main.0a0c2b17.js"></script>
+<div role="region" aria-label="Skip to main content"><a
class="skipToContent_fXgn" href="#docusaurus_skipToContent_fallback">Skip to
main content</a></div><nav aria-label="Main" class="navbar
navbar--fixed-top"><div class="navbar__inner"><div
class="navbar__items"><button aria-label="Toggle navigation bar"
aria-expanded="false" class="navbar__toggle clean-btn" type="button"><svg
width="30" height="30" viewBox="0 0 30 30" aria-hidden="true"><path
stroke="currentColor" stroke-linecap="roun [...]
+<script src="/assets/js/runtime~main.ca29ba4c.js"></script>
<script src="/assets/js/main.5b9603d6.js"></script>
</body>
</html>
\ No newline at end of file
diff --git a/index.html b/index.html
index 3ceb6553..2afea1c2 100644
--- a/index.html
+++ b/index.html
@@ -5,13 +5,13 @@
<meta name="generator" content="Docusaurus v2.3.1">
<title data-rh="true">Apache OpenDAL</title><meta data-rh="true"
property="og:title" content="Apache OpenDAL"><meta data-rh="true"
name="viewport" content="width=device-width,initial-scale=1"><meta
data-rh="true" name="twitter:card" content="summary_large_image"><meta
data-rh="true" property="og:url" content="https://opendal.apache.org/"><meta
data-rh="true" name="docusaurus_locale" content="en"><meta data-rh="true"
name="docusaurus_tag" content="default"><meta data-rh="true" name="docse [...]
<link rel="alternate" type="application/atom+xml" href="/blog/atom.xml"
title="Apache OpenDAL Atom Feed"><link rel="stylesheet"
href="/assets/css/styles.8610ae2e.css">
-<link rel="preload" href="/assets/js/runtime~main.0a0c2b17.js" as="script">
+<link rel="preload" href="/assets/js/runtime~main.ca29ba4c.js" as="script">
<link rel="preload" href="/assets/js/main.5b9603d6.js" as="script">
</head>
<body class="navigation-with-keyboard">
<script>!function(){function
t(t){document.documentElement.setAttribute("data-theme",t)}var e=function(){var
t=null;try{t=localStorage.getItem("theme")}catch(t){}return
t}();t(null!==e?e:"light")}()</script><div id="__docusaurus">
<div id="docusaurus-base-url-issue-banner-container"></div><div role="region"
aria-label="Skip to main content"><a class="skipToContent_fXgn"
href="#docusaurus_skipToContent_fallback">Skip to main content</a></div><nav
aria-label="Main" class="navbar navbar--fixed-top"><div
class="navbar__inner"><div class="navbar__items"><button aria-label="Toggle
navigation bar" aria-expanded="false" class="navbar__toggle clean-btn"
type="button"><svg width="30" height="30" viewBox="0 0 30 30" aria-hid [...]
-<script src="/assets/js/runtime~main.0a0c2b17.js"></script>
+<script src="/assets/js/runtime~main.ca29ba4c.js"></script>
<script src="/assets/js/main.5b9603d6.js"></script>
</body>
</html>
\ No newline at end of file