aboutsummaryrefslogtreecommitdiff
path: root/launcher/modplatform
AgeCommit message (Collapse)Author
2023-05-14Merge branch 'develop' of https://github.com/PrismLauncher/PrismLauncher ↵Trial97
into Fix_Assert
2023-05-06refactor: move functions to utils + code-review fixesRachel Powers
Signed-off-by: Rachel Powers <508861+Ryex@users.noreply.github.com>
2023-05-03Merge branch 'develop' of https://github.com/PrismLauncher/PrismLauncher ↵Trial97
into Fix_Assert
2023-05-03Moved the selected resources to one listTrial97
Signed-off-by: Trial97 <alexandru.tripon97@gmail.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-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-04-28chore: remove FTB modpack supportSefa Eyeoglu
We have been contacted by Feed the Beast to drop support for the FTB modpack browser from Prism Launcher. Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
2023-04-27Removed formated but not used filesTrial97
Signed-off-by: Trial97 <alexandru.tripon97@gmail.com>
2023-04-27Removed extra codeTrial97
Signed-off-by: Trial97 <alexandru.tripon97@gmail.com>
2023-04-22Small CleanupTrial97
Signed-off-by: Trial97 <alexandru.tripon97@gmail.com>
2023-04-22Better version handlingTrial97
Signed-off-by: Trial97 <alexandru.tripon97@gmail.com>
2023-03-12fix: explicit conversion to C string to fix MinGW g++ 10 buildKenneth Chew
Signed-off-by: Kenneth Chew <kenneth.c0@protonmail.com>
2023-02-05feat(RD): add shader pack downloaderflow
Signed-off-by: flow <flowlnlnln@gmail.com>
2023-02-05feat(RD): add resource pack downloaderflow
Signed-off-by: flow <flowlnlnln@gmail.com>
2023-02-02fix(Inst.Import): don't allow bad file path in mrpack importflow
This checks the URL of the path of the file to be downloaded, ensuring that it always contains the root .minecraft target folder, following the warning in the mrpack documentation. Signed-off-by: flow <flowlnlnln@gmail.com>
2023-01-25refactor: make shared_qobject_ptr ctor explicitflow
This turns issues like creating two shared ptrs from a single raw ptr from popping up at runtime, instead making them a compile error. Signed-off-by: flow <flowlnlnln@gmail.com>
2023-01-24Merge branch 'develop' into remove-updaterSefa Eyeoglu
Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
2023-01-23fix(license): add/fix my copyright/license headersflow
*sobbing in messy legal stuff i know nothing about* Signed-off-by: flow <flowlnlnln@gmail.com>
2023-01-13fix(ModUpdater): ensure instead of require icon_urlflow
The spec says that this can be null, and indeed some mods have it set to null, and should still be considered as valid. Signed-off-by: flow <flowlnlnln@gmail.com>
2023-01-13fix(ModUpdater): fail mods individually when there's errors in the JSONflow
Prevents a single problematic mod from invalidating all the API response. Signed-off-by: flow <flowlnlnln@gmail.com>
2023-01-13refactor(RD): allow setting custom folder target for downloaded resourcesflow
Signed-off-by: flow <flowlnlnln@gmail.com>
2023-01-13refactor: change some ResourceAPI from NetJob to Taskflow
This makes it easier to create resource apis that aren't network-based. Signed-off-by: flow <flowlnlnln@gmail.com>
2023-01-13fix: CodeQL warnings about the rule of twoflow
shush Signed-off-by: flow <flowlnlnln@gmail.com>
2023-01-13fix(RD): pass copy of IndexedPack to callbacks instead of ref.flow
This prevents a crash in which the pack list gets updated in a search request meanwhile a versions / extra info request is being processed. Previously, this situation would cause the reference in the latter callbacks to be invalidated by an internal relocation of the pack list. Signed-off-by: flow <flowlnlnln@gmail.com>
2023-01-13refactor(RD): clear up sorting methodsflow
This refactors the sorting methods to join every bit of it into a single list, easing maintanance. It also removes the weird index contraint on the list of methods by adding an index field to the DS that holds the method. Lastly, it puts the available methods on their respective API, so other resources on the same API can re-use them later on. Signed-off-by: flow <flowlnlnln@gmail.com>
2023-01-13fix: build with qt5.12 on Linux and pedantic flagflow
Signed-off-by: flow <flowlnlnln@gmail.com>
2023-01-13refactor(RD): decouple ResourceModels from ResourcePagesflow
This makes it so that we don't need a reference to the parent page in the model. It will be useful once we change the page from a widget-based one to a QML page. It also makes tasks be created in the dialog instead of the page, so that the dialog can also have the necessary information to mark versions as selected / deselected easily. It also makes the task pointers into smart pointers. Signed-off-by: flow <flowlnlnln@gmail.com>
2023-01-13refactor: generalize mod models and APIs to resourcesflow
Firstly, this abstract away behavior in the mod download models that can also be applied to other types of resources into a superclass, allowing other resource types to be implemented without so much code duplication. For that, this also generalizes the APIs used (currently, ModrinthAPI and FlameAPI) to be able to make requests to other types of resources. It also does a general cleanup of both of those. In particular, this makes use of std::optional instead of invalid values for errors and, well, optional values :p This is a squash of some commits that were becoming too interlaced together to be cleanly separated. Signed-off-by: flow <flowlnlnln@gmail.com>
2023-01-13Merge pull request #714 from redstrate/cmarkflow
2023-01-12fix: Remove extra line breaks for modrinth descriptionsJoshua Goins
Signed-off-by: Joshua Goins <josh@redstrate.com>
2023-01-07Merge pull request #576 from Ryex/identify-zip-packsSefa Eyeoglu
fix https://github.com/PrismLauncher/PrismLauncher/issues/349
2023-01-06fix: Add 1.16+ Forge library prefix in TechnicPackProcessor.cppbyquanton
Signed-off-by: byquanton <32410361+byquanton@users.noreply.github.com>
2022-12-29refactor: add an `identify` function to make easy to reuseRachel Powers
Signed-off-by: Rachel Powers <508861+Ryex@users.noreply.github.com>
2022-12-29refactor: use std::filesystem::rename insted of copy and then moving.Rachel Powers
Signed-off-by: Rachel Powers <508861+Ryex@users.noreply.github.com>
2022-12-26fix: cleanup and suggested changesRachel Powers
Signed-off-by: Rachel Powers <508861+Ryex@users.noreply.github.com>
2022-12-25fix: explicit QFileInfo converison for qt6Rachel Powers
fix: validatePath in validateZIPResouces Signed-off-by: Rachel Powers <508861+Ryex@users.noreply.github.com>
2022-12-25feat: support installing worlds during flame pack import.Rachel Powers
Signed-off-by: Rachel Powers <508861+Ryex@users.noreply.github.com>
2022-12-24feat: zip resource validation check for flameRachel Powers
Signed-off-by: Rachel Powers <508861+Ryex@users.noreply.github.com>
2022-12-17refactor(Inst. Import): use m_* for member variables in MR componentsflow
Makes it clearer what is being changed when. Signed-off-by: flow <flowlnlnln@gmail.com>
2022-12-17fix(Inst. Import): correctly set component versions when updatingflow
This makes it so that the later call to parse the old manifest doesn't change the class data, so that the new data con continue there and be reflected on the component list later. Co-authored-by: Sefa Eyeoglu <contact@scrumplex.net> Signed-off-by: flow <flowlnlnln@gmail.com>
2022-12-13fix(Inst.Import): don't set managed pack info from imported ZIPsflow
This prevents the Managed Pack page from showing up even though there's no way for it to work correctly. Signed-off-by: flow <flowlnlnln@gmail.com>
2022-12-10Merge pull request #32 from flowln/modpack_update_pageflow
Closes https://github.com/PrismLauncher/PrismLauncher/issues/180 Closes https://github.com/PrismLauncher/PrismLauncher/issues/170
2022-12-08fix(blockedmods): Track and use targetFolder for blocked filesRachel Powers
Signed-off-by: Rachel Powers <508861+Ryex@users.noreply.github.com>
2022-12-07fix: don't try updating Flame instance names when updating versionsflow
Since the exact version string is only available in the manifest, there's no easy way of getting it before commiting to the update, so there's not much of a good way of showing the updated name in the UI, and using the displayName is weird and gives some buggy behavior. We may want to re-enable it in the future if we find a reliable way of showing the correct info on the UI before starting the update. Signed-off-by: flow <flowlnlnln@gmail.com>
2022-12-06fix(ManagedPackPage): only update the current instance exactlyflow
Also carry on the original ID to avoid updating the wrong instance. Signed-off-by: flow <flowlnlnln@gmail.com>
2022-12-06feat+fix: allow forwarding extra info to InstanceImportTaskflow
This allows us to pass to the creation instances their actual pack ID and version ID, that in Flame's case, are only available before starting to create an instance. Signed-off-by: flow <flowlnlnln@gmail.com>
2022-12-06feat: allow skipping the update confirmation dialogflow
Signed-off-by: flow <flowlnlnln@gmail.com>
2022-12-06refactor: abstract away update confirmation dialogflow
... so that we can avoid code duplication. Signed-off-by: flow <flowlnlnln@gmail.com>
2022-12-06feat: add logic for the modrinth instance modpack pageflow
Signed-off-by: flow <flowlnlnln@gmail.com>
2022-12-06chore: add license headersSefa Eyeoglu
Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>