unexpected breaking changes with `process.exitCode`/`process.exit()`
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
20.0.0-pre (nightly)
Platform
Darwin dib.lan 22.1.0 Darwin Kernel Version 22.1.0: Sun Oct 9 20:14:30 PDT 2022; root:xnu-8792.41.9~2/RELEASE_ARM64_T8103 arm64
Subsystem
process
What steps will reproduce the bug?
const assert = require('assert')
process.exitCode = 2
delete process.exitCode // REMOVE
assert(process.exitCode === undefined) // REMOVE
process.exit(undefined)
How often does it reproduce? Is there a required condition?
reproduces on all node versions built after landing #44711
What is the expected behavior?
the assertion should pass, and if the two lines marked REMOVE are commented out the process should exit with code 2
What do you see instead?
the assertion throws, and if the two lines marked REMOVE are commented out the process exits with code 0
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 ejecutando la reproducción con una compilación posterior a #44711 y compara la eliminación de process.exitCode con process.exit(undefined). Se considera terminado cuando la aserción pasa y el proceso sigue terminando con el código 2 al eliminar las líneas marcadas.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- javascript, node.js
- Área
- operating-systems
- Tipo de issue
- Error
- Dificultad
- 3/5
- Tiempo estimado
- 1-2 días
- Estado de actividad
- Estancado
- Claridad
- Bien especificado
- Aptitud para principiantes
- 38/100