Steps to reproduce:
1. Create a default app.
2. Build for IOS simulator.
3. After app launch, rebuild the app for the same simulator, without quitting the current simulator.
Actual results:
1. The build fails with :
[DEBUG] : Log server port 28544 is in use, testing if it's the app we're building
[ERROR] : Another process is currently bound to port 28544
[ERROR] : Set a unique <log-server-port> between 1024 and 65535 in the <ios> section of the tiapp.xml
2. Works fine after quitting the emulator & then rebuilding.
Expected result:
1. The build should not fail.
I also run into this from time to time. [~cbarber], i remember killing stale node processes solved this for me, so maybe the log server sometimes doesn't quit properly? Not 100% sure, i'll check again when i run into this next time.
[~cbarber], i did some testing and this happens when the app is put in the background. When you bring it to the foreground it works again. Updated testing steps are:
Build and launch app on Simulator
Put the app in the background
Rebuild and see the error happening
Bring the app to foreground, do another rebuild and everything works again
After having a quick call with [~jvennemann] and doing some tests, [we think] we figured out the problem! Node's
net.connect()
has atimeout
option and it's an *activity* timeout, not a *connection* timeout. So, even if you receive data, it will still timeout. master PR: https://github.com/appcelerator/titanium_mobile/pull/10975FR passed on Master, waiting on Jenkins build and a back-port for 8_1_X.
Did a manual rebase and merge to master (had to fix some lint issues and re-work the commit message). Then cherry-picked to 8_1_X.
Thanks [~cwilliams]!
Closing ticket, fix verified in SDK version
8.1.0.v20190711103439
and SDK version8.2.0.v20190711103355
Test an other information can be found at: https://github.com/appcelerator/titanium_mobile/pull/10975