Hooks loading `commonjs` files uses `import` condition for `require()`
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
Version
21.5.0
Platform
macOS
Subsystem
No response
What steps will reproduce the bug?
Reproduction: https://github.com/privatenumber/bug-node-hooks-cjs-conditions
How often does it reproduce? Is there a required condition?
A Hook needs to be registered to load commonjs type files.
What is the expected behavior? Why is that the expected behavior?
For the conditions to include require when require(file) is executed.
What do you see instead?
The import conditions only include import.
Here are the logs:
resolve: {
"url": "file:///repro/src/index.cjs",
"context": {
"conditions": [
"node",
"import",
"node-addons"
],
"importAttributes": {}
}
}
load: {
"url": "file:///repro/src/index.cjs",
"context": {
"format": "commonjs",
"importAttributes": {}
}
}
resolve: {
"url": "file:///repro/src/file.cjs",
"context": {
"conditions": [
"node",
"import",
"node-addons"
],
"importAttributes": {},
"parentURL": "file:///repro/src/index.cjs"
}
}
load: {
"url": "file:///repro/src/file.cjs",
"context": {
"format": "commonjs",
"importAttributes": {}
}
}
Additional information
No response
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 la reproducción enlazada e inspecciona los contextos resolve y load del hook para archivos CommonJS. Compara las condiciones reportadas durante require(file) con la condición require esperada; se considera completado cuando el hook recibe la condición correcta al cargar archivos CommonJS y la reproducción ya no muestra únicamente import.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- javascript
- Área
- backend
- Tipo de issue
- Error
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Estado de actividad
- Tranquilo
- Claridad
- Bastante claro
- Aptitud para principiantes
- 48/100