-
Notifications
You must be signed in to change notification settings - Fork 1.9k
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
Detox catches SIGINT and SIGTERM, causing long running subprocesses to never end #881
Labels
Comments
This is not good and should be handled quickly. |
Sure. |
noomorph
added a commit
that referenced
this issue
Aug 13, 2018
rotemmiz
pushed a commit
that referenced
this issue
Aug 13, 2018
Yes and no. But let's close. There is another problem to solve (cleaning artifacts junk that you get if you Ctrl+C the runner), however. |
Why is there only one catch for signals? Can't we catch and then "rethrow"? |
I have not found a way in Node.js so far :/ |
Node🤦♂️ |
# for free
to subscribe to this conversation on GitHub.
Already have an account?
#.
Detox catches SIGINT and SIGTERM to be able to cleanup artifacts currently being recorded on Android emualtors (and probably more things) before termination
https://github.com/wix/detox/blob/master/detox/src/utils/onTerminate.js#L4
Not sure if this is an issue with node, but currently, when a user tries to terminate the test (ctrl+c), any long running subprocess/server will continue running and will need to be forcefully killed. Node will not inform/kill those subprocesses/servers.
I think we should drop
onTerminate
event altogether, and keep things dirty if a user stops, and act exactly like test runners expect tests to run. This is not ideal, but will keep us out of trouble.Instead of cleaning up upon
onTerminate
, we may cleanup the emulator from half baked artifacts duringdeviceDriver.acquireFreeDevice
.The text was updated successfully, but these errors were encountered: