aboutsummaryrefslogtreecommitdiff
path: root/launcher/tasks/ConcurrentTask.cpp
AgeCommit message (Collapse)Author
2023-06-09Fixed some crashesTrial97
Signed-off-by: Trial97 <alexandru.tripon97@gmail.com>
2023-05-21fix: memory leak with NetJob and responce not getting cleaned upRachel Powers
Signed-off-by: Rachel Powers <508861+Ryex@users.noreply.github.com>
2023-05-05Apply suggestions from code reviewRachel Powers
Co-authored-by: flow <flowlnlnln@gmail.com> Signed-off-by: Rachel Powers <508861+Ryex@users.noreply.github.com>
2023-05-01feat: estimate remining time on downloadsRachel Powers
Signed-off-by: Rachel Powers <508861+Ryex@users.noreply.github.com>
2023-05-01refactor: Qt can handle const& in signals and slotsRachel Powers
While most Qt types cna use implicit data sharing pasing our own structs means copies. const& ensure it's only copied as needed by Qt. Signed-off-by: Rachel Powers <508861+Ryex@users.noreply.github.com>
2023-05-01fix: no need to loop all sub tasksRachel Powers
pathc by flowin Signed-off-by: Rachel Powers <508861+Ryex@users.noreply.github.com> Signed-off-by: flow <flowlnlnln@gmail.com>
2023-05-01refactor: propogate only only one StepProgress at a timeRachel Powers
Signed-off-by: Rachel Powers <508861+Ryex@users.noreply.github.com>
2023-05-01fix: clean up license headers for TasksRachel Powers
Signed-off-by: Rachel Powers <508861+Ryex@users.noreply.github.com>
2023-05-01feat: add `details` signal to `Task`Rachel Powers
feat: add details to mod pack downloading feat: add logging rule sloading form `ligging.ini at data path root feat: add `launcher.task` `launcher.task.net` and `launcher.task.net.[down|up]load` logging categories fix: add new subtask progress to the end of the lay out not the beginning (cuts down on flickering) Signed-off-by: Rachel Powers <508861+Ryex@users.noreply.github.com>
2023-05-01fix: properly map progress rangeRachel Powers
- doument PCRE used for URL compacting Signed-off-by: Rachel Powers <508861+Ryex@users.noreply.github.com>
2023-05-01feat: Propogated subtask progressRachel Powers
Oh boy this is big. > TaskStepProgress struct is now QMetaObject compatabile and can be sent through signals > Task now has a method to propogates sub task progress it must be signal bound by each task containing a task wishing to report progress of it's children. > Downloads report speed > Tasks now have UUIDS to track them - use when reporting - use when logging - use when storeing them or objects related to them Signed-off-by: Rachel Powers <508861+Ryex@users.noreply.github.com>
2023-05-01feat: better task trackingRachel Powers
Signed-off-by: Rachel Powers <508861+Ryex@users.noreply.github.com>
2023-01-24fix(Tasks): don't try to start more tasks than necessaryflow
Signed-off-by: flow <flowlnlnln@gmail.com>
2023-01-18fix: call processEvents() before adding new tasks to the task queueflow
This allows the ongoing task to go off the stack before the next one is started. Signed-off-by: flow <flowlnlnln@gmail.com>
2022-12-17refactor(Tasks): remove 'm_total_size' from ConcurrentTaskflow
We can use the queues directly instead. Signed-off-by: flow <flowlnlnln@gmail.com>
2022-12-15feat(Tasks): allow adding subtasks while running in ConcurrentTaskflow
Signed-off-by: flow <flowlnlnln@gmail.com>
2022-12-15feat(Tasks): add ConcurrentTask::clear to allow re-using tasksflow
This way old runs won't pile up in the internal DSs Signed-off-by: flow <flowlnlnln@gmail.com>
2022-09-07fix: start at least one task in ConcurrentTaskflow
This allows us to emit all the necessary stuff when we're finished in the case of starting a task with no subtasks. In particular, this caused the mod updater to not work properly :) Signed-off-by: flow <flowlnlnln@gmail.com>
2022-08-28fix: abort logic running subsequent tasks anyways some timesflow
Signed-off-by: flow <flowlnlnln@gmail.com>
2022-08-28fix: 'succeeded while not running' spam in ConcurrentTaskflow
Signed-off-by: flow <flowlnlnln@gmail.com>
2022-08-28fix: bogus progress update when the total step progress was zeroflow
Signed-off-by: flow <flowlnlnln@gmail.com>
2022-08-28fix: only try to start tasks that are really thereflow
This fixes an annoying issue where concurrent tasks would try to start multiple tasks even when there was not that many tasks to run in the first place, causing some amount of log spam. Signed-off-by: flow <flowlnlnln@gmail.com>
2022-07-24fix: pump events and do a queued start for concurrent tasksflow
Heavy workloads can consume a ton of time doing their stuff, and starve the event loop out of events. This adds an event processing call after every concurrent task has been completed, to decrease the event loop stravation on such loads. Signed-off-by: flow <flowlnlnln@gmail.com>
2022-07-01feat: add ConcurrentTaskflow
This tasks (or rather, meta-task) has the ability to run several other sub tasks concurrently. Signed-off-by: flow <flowlnlnln@gmail.com>