From 498ac2a048a620218e140ae0542a9540e2275ccc Mon Sep 17 00:00:00 2001 From: Jesse Talavera Date: Wed, 26 Nov 2025 15:33:39 -0500 Subject: [PATCH 1/2] Fix async function to await fs.open call Node.js's documentation says that `fs.open` returns a `Promise`, so it needs to be `await`ed here --- .../global_objects/asyncdisposablestack/adopt/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/files/en-us/web/javascript/reference/global_objects/asyncdisposablestack/adopt/index.md b/files/en-us/web/javascript/reference/global_objects/asyncdisposablestack/adopt/index.md index b73ebc3a0c5e07b..cef4e7654c0d3c3 100644 --- a/files/en-us/web/javascript/reference/global_objects/asyncdisposablestack/adopt/index.md +++ b/files/en-us/web/javascript/reference/global_objects/asyncdisposablestack/adopt/index.md @@ -45,7 +45,7 @@ This function creates a file handle (as a Node.js [`FileHandle`](https://nodejs. async function readFile(path) { await using disposer = new AsyncDisposableStack(); const handle = disposer.adopt( - fs.open(path), + await fs.open(path), async (handle) => await handle.close(), ); const data = await handle.read(); From 4d7dac33c20be9c02e67195301e4fb9283300772 Mon Sep 17 00:00:00 2001 From: Joshua Chen Date: Wed, 26 Nov 2025 18:24:30 -0500 Subject: [PATCH 2/2] fix others --- .../global_objects/asyncdisposablestack/use/index.md | 2 +- .../javascript/reference/statements/await_using/index.md | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/files/en-us/web/javascript/reference/global_objects/asyncdisposablestack/use/index.md b/files/en-us/web/javascript/reference/global_objects/asyncdisposablestack/use/index.md index c33baec1a76aa80..d40ce81dc2fdbcd 100644 --- a/files/en-us/web/javascript/reference/global_objects/asyncdisposablestack/use/index.md +++ b/files/en-us/web/javascript/reference/global_objects/asyncdisposablestack/use/index.md @@ -42,7 +42,7 @@ This function reads a file (as a Node.js [`FileHandle`](https://nodejs.org/api/f ```js async function readFileContents(path) { await using disposer = new AsyncDisposableStack(); - const handle = disposer.use(fs.open(path)); + const handle = disposer.use(await fs.open(path)); const data = await handle.read(); return data; // The disposer is disposed here, which causes handle to be closed too diff --git a/files/en-us/web/javascript/reference/statements/await_using/index.md b/files/en-us/web/javascript/reference/statements/await_using/index.md index 4ccd6b021dac71f..be1c868dbc27956 100644 --- a/files/en-us/web/javascript/reference/statements/await_using/index.md +++ b/files/en-us/web/javascript/reference/statements/await_using/index.md @@ -118,9 +118,9 @@ for await (using reader of asyncIterableOfSyncDisposables) { ``` ```js -const syncIterableOfAsyncDisposables = fs - .globSync("*.txt") - .map((path) => fs.open(path, "r")); +const syncIterableOfAsyncDisposables = await Promise.all( + fs.globSync("*.txt").map((path) => fs.open(path, "r")), +); for (await using file of syncIterableOfAsyncDisposables) { console.log(await file.read()); }