Commit 017620f
authored
fix: resolve installer stall and add clear completion signal (#91)
* fix: resolve installer stall and add clear completion signal
After the last wizard prompt, Node's event loop stayed alive because
promptChoiceList resumed stdin via emitKeypressEvents but never paused
it in cleanup(). The process appeared hung even though all output had
been written. Users had to force-quit before reading the completion text.
- pause stdin in promptChoiceList cleanup so the event loop can drain
- add process.exit() under IS_MAIN as a hard backstop against future leaks
- upgrade completion banner to bold green ✓ and add an explicit
"Setup complete — this session will now exit." line so users know the
wizard finished intentionally
* fix: remove process.exit() — stdin.pause() is sufficient
process.exit() can truncate buffered stdout/stderr in piped or redirected
usage before streams fully flush. The stdin.pause() in promptChoiceList
cleanup already lets the event loop drain naturally; the forced exit was
unnecessary backstop that introduced data-loss risk.1 parent 2915854 commit 017620f
2 files changed
Lines changed: 3 additions & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
122 | 122 | | |
123 | 123 | | |
124 | 124 | | |
125 | | - | |
| 125 | + | |
126 | 126 | | |
127 | 127 | | |
128 | 128 | | |
| 129 | + | |
129 | 130 | | |
130 | 131 | | |
131 | 132 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
198 | 198 | | |
199 | 199 | | |
200 | 200 | | |
| 201 | + | |
201 | 202 | | |
202 | 203 | | |
203 | 204 | | |
| |||
0 commit comments