Open shamrin opened 7 years ago
Thanks for filing this ticket. I'm seeing this same issue:
$ gemini-gui .
# The user must now run tests in the GUI or the bug won't surface.
# ...test output...
# ...test output...
# ...test output...
^CCancelling...
At this point, the command hangs forever or until ctrl-c is pressed again. However, when executed through NPM, the issue is even more confusing and problematic:
...,
"scripts": {
...,
"test:gemini-gui": "gemini-gui ."
...
},
...
$ npm run -s test:gemini-gui
# The user must now run tests in the GUI or the bug won't surface.
# ...test output...
# ...test output...
# ...test output...
^CCancelling...
Unlike when executed directly, the NPM command appears to terminate after "Cancelling..." but Gemini GUI is actually still running in the background because it ignores the initial SIGINT. This causes the port to stay open. The issue appears to be in Gemini itself, not the GUI.
Steps
npm install --save-dev gemini-gui
test:gui
command topackage.json
:npm run test:gui
Run
button to run testsExpected
gemini-gui server is terminated
Actual
npm run script is terminated, but gemini-gui is still running and occupies the port forever
Logs
Address is indeed still in use:
Curiously, it prints
Force quit
when killing the process:(The problem is even more confusing because of #2)