esm: unflag Module.register and allow nested loader import()#48559
Merged
nodejs-github-bot merged 1 commit intonodejs:mainfrom Jul 19, 2023
Merged
Conversation
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Overview
Major functional changes:
import()to work within loaders that require other loaders,Module.register.A new interface
Customizationshas been created in order to unifyModuleLoader(previouslyDefaultModuleLoader),HooksandCustomizedModuleLoaderall of which now implement it:The
ModuleLoaderclass now hassetCustomizationswhich takes an object of this shape and delegates its responsibilities to this object if present.Note that two properties
allowImportMetaResolveandresolveSyncexist now as a mechanism forimport.meta.resolve– sinceHooksdoes not implementresolveSyncother loaders cannot useimport.meta.resolve;allowImportMetaResolveis a way of checking for that case instead of invokingresolveSyncand erroring.Developer's Certificate of Origin 1.1
By making a contribution to this project, I certify that:
(a) The contribution was created in whole or in part by me and I
have the right to submit it under the open source license
indicated in the file; or
(b) The contribution is based upon previous work that, to the best
of my knowledge, is covered under an appropriate open source
license and I have the right under that license to submit that
work with modifications, whether created in whole or in part
by me, under the same open source license (unless I am
permitted to submit under a different license), as indicated
in the file; or
(c) The contribution was provided directly to me by some other
person who certified (a), (b) or (c) and I have not modified
it.
(d) I understand and agree that this project and the contribution
are public and that a record of the contribution (including all
personal information I submit with it, including my sign-off) is
maintained indefinitely and may be redistributed consistent with
this project or the open source license(s) involved.