Unverified Commit 521c08de authored by Daniel Clark's avatar Daniel Clark Committed by Gus Caplan
Browse files

module: make synthetic module evaluation steps return a Promise to support top level await

Top level await expects that all module script evaluation returns a
Promise. As such, update
ModuleWrap::SyntheticModuleEvaluationStepsCallback to return a
resolved Promise now that V8 has enabled top-level await by default.

Unfortunately I don't have a spec reference that I can point to here
because the Built-in modules proposal isn't yet updated for
top level await.

The corresponding change for Blink is
https://chromium-review.googlesource.com/c/chromium/src/+/2568823.

This will allow a workaround for Node in this V8 bugfix to be removed:
https://chromium-review.googlesource.com/c/v8/v8/+/2673794.

Fixes: https://github.com/nodejs/node/issues/37299

PR-URL: https://github.com/nodejs/node/pull/37300


Reviewed-By: default avatarGus Caplan <me@gus.host>
Reviewed-By: default avatarMichaël Zasso <targos@protonmail.com>
parent c65e492a
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment