Provide built-in implementations of module linker, initializeImportMeta, importModuleDynamically
Nadie ha tomado este issue todavía.
- Lenguaje dominante
- JavaScript
- Estrellas
- 122k
- Forks
- 37.3k
- Merge medio
- 4 d 2 h
- PR fusionados (30 d)
- 283
Descripción
Is your feature request related to a problem? Please describe.
When using vm.SourceTextModule we have to implement a linker, initializeImportMeta, and importModuleDynamically, even if we just want the default behavior of built-in module support. There are many subtle ways to get that wrong.
Describe the solution you'd like
Default implementations that do basically what built-in module support does:
- A linker function that:
- Reads files from disk, within a specified root.
- Uses Node module resolution as implemented for modules
- Uses a specified module cache
initializeImportMetathat setsurlproperty- By configuration, allows access to built-in modules.
Describe alternatives you've considered
Userland libraries can take the first cuts at easy-to-use vm.Modules, but I think something for common use cases should likely be included.
Guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Línea de trabajo
Comienza con el punto de entrada vm.SourceTextModule y el comportamiento de resolución de módulos de Node al que se hace referencia en el issue. Revisa los valores predeterminados solicitados para linker, initializeImportMeta e importModuleDynamically, incluida la configuración de root, la caché de módulos y los módulos integrados. La tarea está terminada cuando los vm.Modules habituales pueden usar implementaciones integradas sin callbacks personalizados.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- javascript, node.js
- Área
- backend
- Tipo de issue
- Nueva funcionalidad
- Dificultad
- 5/5
- Tiempo estimado
- Más de una semana
- Estado de actividad
- Tranquilo
- Claridad
- Bastante claro
- Aptitud para principiantes
- 45/100