7.5.1 on Windows, from reporter:
Traceback (most recent call last):
File "src\tribler-gui\tribler_gui\core_manager.py", line 64, in on_core_finished
RuntimeError: The Tribler core has unexpectedly finished with exit code -1 and status: 0!
Traceback (most recent call last):
File "src\run_tribler.py", line 115, in <module>
File "src\run_tribler.py", line 99, in start_tribler_core
File "lib\asyncio\base_events.py", line 534, in run_forever
File "lib\asyncio\base_events.py", line 1735, in _run_once
File "lib\selectors.py", line 323, in select
File "lib\selectors.py", line 314, in _select
ValueError: too many file descriptors in select()
The answer is instantly available on SO:
By default Windows can use only 64 sockets in asyncio loop. This is a limitation of underlying select() API call.
To increase the limit please use ProactorEventLoop.
Using the ProactorEventLoop event loop will break Tribler on Python 3.7 and lower, as it doesn't support create_datagram_endpoint. In Python 3.8 that limitation is fixed, and ProactorEventLoop is the default on Windows.
Well, this means we have to move our infrastructure to python 3.8
Our macOS builds already include Python 3.8. Our 64-bit Windows build is still Python 3.7(.5?) and I'm not sure about our 32-bit build. If we also upgrade our Linux builder, moving to Python 3.8 is more than doable. Do we want this for the 7.5.2 release?
Do we want this for the 7.5.2 release?
Yes, that's the perfect opportunity to do this. Everything else is stable, so no surprises (except for 3.8-specific :gift: of course).
There are always surprises when touching the builder infrastructure 馃巵. With Tribler, it's always Christmas!
I'll try to spend some time on the upgrade to Python 3.8.
@hbiyik , we would like to streamline our build system, but definitely not for a minor release ))
Fixed automatically by using Python 3.8 on Windows
Most helpful comment
There are always surprises when touching the builder infrastructure 馃巵. With Tribler, it's always Christmas!
I'll try to spend some time on the upgrade to Python 3.8.