New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
rTorrent: Refactor source code #1014
base: develop
Are you sure you want to change the base?
Conversation
This commit allows modular and parallel building of rTorrent dependencies. Output is appended to `swizzin.log` afterwards more cleanly than before. Temporary log files are used to prevent race conditions from happening. Threads counts and task concurrency are limited to ensure stable installation times.
cbbfe81
to
e5b2630
Compare
0c5353b
to
f1b7959
Compare
16e60b5
to
56a712f
Compare
This pull request has been updated.
The rtorrent removal stack code is now "fixed" and "refactored".
|
I have been mulling over the async processes and I have decided not to move forward with them. I understand that it saves time, but ultimately it's a layer of complexity that I don't want merged into the scripts. The trade-off (saving some time during tasks which are not frequently run) is not worth the increased complexity and other potential issues that might result from this. There are other improvements in here worth merging, but ultimately, foregoing the forking and background tasks. |
Could we consider implementing low complexity async tasks, with the only acceptable risk for potential issues being logging? The trade-off between added logging complexity and time-saved is worth it IMHO. It would allow level 3 compile optimizations and take minutes off certain tasks such as dhparm generation on openssl for nginx. For instance, the only shared code and added complexity for |
This pull request refactors the rTorrent source code for faster installation, better logging readability and reduced maintenance. Five single threaded tasks are executed in parallel. When completed,
swizzin.log
is updated with dividing sections for each task. Package installation is told to wait with less than 4 threads, otherwise it proceeds at the same time to consume idle resources.swizzin.log
by separating different tasks.