1
0
Fork 0
mirror of https://github.com/denoland/deno.git synced 2024-11-29 16:30:56 -05:00
denoland-deno/ext
Andreu Botella 542d9e7620 chore(wasm): Don't await on the argument to handleWasmStreaming (#14000)
`handleWasmStreaming` is the function that provides the binding with
the `fetch` API needed for `WebAssembly.instantiateStreaming()` and
`WebAssembly.compileStreaming()`. When I implemented it in #11200, I
thought V8 was calling these functions with the argument of the
`WebAssembly` streaming functions, without doing any resolving, and so
`handleWasmStreaming` awaits for the parameter to resolve. However,
as discovered in
https://github.com/denoland/deno/issues/13917#issuecomment-1065805565,
V8 does in fact resolve the parameter if it's a promise (and handles
rejections arising from that).

This change removes the `async` IIFE inside `handleWasmStreaming`,
letting initial errors be handled synchronously (which will however
not throw synchronously from the `WebAssembly` namespace functions).
Awaiting is still necessary for reading the bytes of the response,
though, and so there is an `async` IIFE for that.
2022-03-30 16:48:40 -04:00
..
broadcast_channel v1.20.3 2022-03-25 16:22:00 +01:00
console v1.20.3 2022-03-25 16:22:00 +01:00
crypto v1.20.3 2022-03-25 16:22:00 +01:00
fetch chore(wasm): Don't await on the argument to handleWasmStreaming (#14000) 2022-03-30 16:48:40 -04:00
ffi v1.20.3 2022-03-25 16:22:00 +01:00
http v1.20.3 2022-03-25 16:22:00 +01:00
net v1.20.3 2022-03-25 16:22:00 +01:00
tls v1.20.3 2022-03-25 16:22:00 +01:00
url v1.20.3 2022-03-25 16:22:00 +01:00
web v1.20.3 2022-03-25 16:22:00 +01:00
webgpu v1.20.3 2022-03-25 16:22:00 +01:00
webidl v1.20.3 2022-03-25 16:22:00 +01:00
websocket v1.20.3 2022-03-25 16:22:00 +01:00
webstorage v1.20.3 2022-03-25 16:22:00 +01:00