-
Notifications
You must be signed in to change notification settings - Fork 30.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
esm: Unflag --experimental-modules #29866
Conversation
//cc @nodejs/modules-active-members |
The three failing tests in this PR are:
|
Adding WIP label based on PR description. Feel free to remove when appropriate, swap out with blocked label, or whatever. No strong opinions here. Just seems like the right thing to me. (The WIP label helps me in my workflow with the repository, so it's not just cosmetic for me, if that matters. But again, no strong opinions on this particular PR in that regard.) |
f391964
to
fe3c3d1
Compare
On @joyeecheung's advice I've gone ahead and changed the way the async bootstrap works. Instead of always applying an async bootstrap, the async bootstrap and all promises associated will only apply lazily when the ESM loader is actually in use. This way loading CommonJS retains a fully sync bootstrap that is completely backwards compatible with no timings changes or task queue differences. This also removes the dependence of this work on #29848. All tests are now passing! Further review welcome. |
I've split out the bootstrap changes into a separate PR at #29937, and based this unflagging to that PR for a simpler diff. |
We likely want #29974 to land as well |
89b337f
to
7e73234
Compare
@nodejs/modules anyone have an issue with renaming |
This PR unflags the
--experimental-modules
support making modules on-by-default, while remaining backwards-compatible with the current runMain.This PR should only land after the remaining PRs have been fully considered:
--experimental-json-modules
(module: Revert remove experimental status from JSON modules #29754)--experimental-exports
(esm: unflag --experimental-exports #29867)In addition to:
Checklist
make -j4 test
(UNIX), orvcbuild test
(Windows) passes