ebd46705d5
refactor: move creation of CF file download task to a separate function
...
Signed-off-by: flow <flowlnlnln@gmail.com >
2022-09-20 18:36:08 -03:00
72d2ca234e
refactor: move flame modpack import to separate file
...
Signed-off-by: flow <flowlnlnln@gmail.com >
2022-09-20 18:36:07 -03:00
2246c3359b
refactor: add throw_on_blocked
arg to Flame file parse
...
Signed-off-by: flow <flowlnlnln@gmail.com >
2022-09-20 18:36:07 -03:00
242fb156a2
feat: add 'getFiles' by fileIds route in Flame API
...
Signed-off-by: flow <flowlnlnln@gmail.com >
2022-09-20 18:36:07 -03:00
208ed73e59
feat: add early modrinth pack updating
...
Still some FIXMEs and TODOs to consider, but the general thing is here!
Signed-off-by: flow <flowlnlnln@gmail.com >
2022-09-20 18:36:06 -03:00
4441b37338
refactor: move modrinth modpack import to separate file
...
Signed-off-by: flow <flowlnlnln@gmail.com >
2022-09-20 18:32:36 -03:00
4c7d3a103c
refactor: restructure tests
...
Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net >
2022-09-11 22:29:01 +02:00
1b0ca47682
Merge pull request #939 from flowln/mod_downloader_improve
...
Some more UI / UX improvements to the mod downloader!
2022-09-07 08:27:11 -03:00
4817f0312d
Fixed up a warning
...
Signed-off-by: timoreo <contact@timoreo.fr >
2022-09-06 14:32:19 +02:00
2186b134a4
fix: Mod type enum -> Resource type enum
...
Signed-off-by: flow <flowlnlnln@gmail.com >
2022-08-28 14:47:52 -03:00
f371ec210c
Merge pull request #1052 from flowln/resource_model
2022-08-28 16:52:53 +02:00
afcd669d2f
Merge pull request #965 from flowln/fat_files_in_memory
...
Refactor a bit EnsureMetadataTask and calculate hashes in a incremental manner
2022-08-28 11:03:12 +02:00
3225f514f6
refactor: move general info from Mod to Resource
...
This allows us to create other resources that are not Mods, but can
still share a significant portion of code.
Signed-off-by: flow <flowlnlnln@gmail.com >
2022-08-20 10:41:59 -03:00
70a8f6743a
Merge pull request #919 from kumquat-ir/download-all-blocked
2022-08-20 12:50:01 +02:00
c375e7b4df
Merge pull request #897 from jamierocks/atl-updating-initial
2022-08-11 08:50:05 +02:00
7b27f200b1
fix: don't mutate QHash while iterating over it
...
Even though it was using a QMutableHashIterator, sometimes it didn't
work quite well, so this is a bit better.
Signed-off-by: flow <flowlnlnln@gmail.com >
2022-08-05 16:30:12 -03:00
f4b207220c
fix: add some more nullptr checks / protection
...
die sigsegv 🔫
Signed-off-by: flow <flowlnlnln@gmail.com >
2022-08-05 15:10:44 -03:00
6aaf1f4f21
feat: lazy-load CF mod descriptions
...
Signed-off-by: flow <flowlnlnln@gmail.com >
2022-08-01 07:33:30 -03:00
368a0ddd44
feat: add mod descriptions to CF mods
...
Signed-off-by: flow <flowlnlnln@gmail.com >
2022-08-01 07:33:30 -03:00
6f052baa94
refactor: use function cb instead of class cb in getVersions
...
I've discovered even more functional programming! :^)
Signed-off-by: flow <flowlnlnln@gmail.com >
2022-08-01 07:33:30 -03:00
74c6c5cfbc
refactor: use function cb instead of class cb in getModInfo
...
I've discovered functional programming :^)
This makes this route more fit for general use.
Signed-off-by: flow <flowlnlnln@gmail.com >
2022-08-01 07:33:30 -03:00
6e9a27f40f
feat: display the 'body' of a MR mod on the mod downloader
...
Signed-off-by: flow <flowlnlnln@gmail.com >
2022-08-01 07:33:29 -03:00
9c105914f0
use BlockedModsDialog for ftb packs as well
...
Signed-off-by: kumquat-ir <66188216+kumquat-ir@users.noreply.github.com >
2022-07-31 15:05:47 -04:00
94a63e3859
Merge pull request #941 from Scrumplex/bump-cxx-standard
...
Bump to C++17
2022-07-30 17:10:59 +01:00
fbf1901d86
refactor: shuffle some things around to improve readability
...
Signed-off-by: flow <flowlnlnln@gmail.com >
2022-07-26 20:33:33 +02:00
0382f33c46
fix(ui): pump events to show "Copying modpack files..." text
...
Signed-off-by: flow <flowlnlnln@gmail.com >
2022-07-26 20:33:33 +02:00
13372f3f99
chore: clean up FTBPackInstallTask a bit and connect missing signals
...
Signed-off-by: flow <flowlnlnln@gmail.com >
2022-07-26 20:33:33 +02:00
e741cb7f0a
fix: add abort handlign in Flame's FileResolvingTask
...
Signed-off-by: flow <flowlnlnln@gmail.com >
2022-07-26 20:33:33 +02:00
fb289c6b17
chore: add license headers
...
Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net >
2022-07-26 20:33:29 +02:00
75a7ea55d4
feat: implement mod resolving for FTB
...
Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net >
2022-07-26 20:33:10 +02:00
e6f2a3893a
refactor+feat: improve code separation in ensure metadata
...
... and avoid calculating the same hash multiple times
Signed-off-by: flow <flowlnlnln@gmail.com >
2022-07-24 17:46:54 -03:00
631a93bcd8
refactor: add a HashUtils place for hashing stuff
...
Signed-off-by: flow <flowlnlnln@gmail.com >
2022-07-24 17:46:54 -03:00
b1763353ea
feat: do incremental calculation of CF's hash
...
Signed-off-by: flow <flowlnlnln@gmail.com >
2022-07-24 17:46:53 -03:00
15ec1abb6a
feat: use QIODevice for calcuating the JAR hash on Modrinth
...
Signed-off-by: flow <flowlnlnln@gmail.com >
2022-07-24 17:46:53 -03:00
cfda8dbb2b
refactor: use QIODevice instead of a whole QByteArray for hash calc.
...
This allows Qt to do its thing and optimize the data gathering from the
JAR.
Signed-off-by: flow <flowlnlnln@gmail.com >
2022-07-24 17:46:53 -03:00
c666c3e251
refactor!: bump to C++17 and C17
...
Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net >
2022-07-20 14:22:10 +02:00
28ae5d710e
fix: fix translations for mod updater
...
Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net >
2022-07-19 18:03:45 +02:00
6bb8332b4b
fix: bogus returns in EnsureMetadataTask
...
Signed-off-by: flow <flowlnlnln@gmail.com >
2022-07-17 11:43:12 -03:00
de9e304236
fix: std::list -> QList
...
Qt6 removed Qlist::toStdList() 😭
Signed-off-by: flow <flowlnlnln@gmail.com >
2022-07-17 11:33:45 -03:00
001bbef9ee
fix: don't use shared_ptr for a background task T_T
...
Signed-off-by: flow <flowlnlnln@gmail.com >
2022-07-17 11:33:44 -03:00
c4316e81e6
change: make Mod a QObject used as a pointer
...
Prevents problems when copying it around!
Signed-off-by: flow <flowlnlnln@gmail.com >
2022-07-17 11:33:44 -03:00
5f75e531e6
fix: handling around disabled mods
...
Don't update disabled mods to prevent mod duplication. Also, chop
filename in the metadata with a '.disabled'.
Signed-off-by: flow <flowlnlnln@gmail.com >
2022-07-17 11:33:43 -03:00
a7648d60ce
fix: don't require non-essential items in mod index
...
Also adds slug field.
Signed-off-by: flow <flowlnlnln@gmail.com >
2022-07-17 11:33:43 -03:00
52c45c2d32
feat: add some mod api calls
...
- Get Project: Already existed but required a specific caller type. This
is more general.
- Get Projects: A single call to multiple of the above
Both providers support these calls.
Signed-off-by: flow <flowlnlnln@gmail.com >
2022-07-17 11:33:43 -03:00
fd6755c93f
change: mod metadata improvements
...
- Use slug instead of name
- Keep temporary status before having local details
Signed-off-by: flow <flowlnlnln@gmail.com >
2022-07-17 11:33:43 -03:00
4e6978ff6f
feat: improve metadata gen. networking and performance
...
This makes the metadata generation code a lot messier and harder to use,
but there's not really much else that can be done about it while
preserving all it's capabilities :(
At least we now have speed
Signed-off-by: flow <flowlnlnln@gmail.com >
2022-07-17 11:33:43 -03:00
91a5c4bdcb
feat: add metadata get/delete via mod id
...
This is, in many cases, more reliable than name comparisons, so it's
useful specially in cases where a mod changes name between versions
Signed-off-by: flow <flowlnlnln@gmail.com >
2022-07-17 11:33:43 -03:00
6e2869834f
feat: add mod update dialog
...
This subclasses the Review mods dialog to make a "Update review" one.
Also, all the necessary components built until now are put together in a
coherent unity that checks and generates metadata on-the-fly and checks for
mod updates, while giving and receiving feedback to the user.
Signed-off-by: flow <flowlnlnln@gmail.com >
2022-07-17 11:33:42 -03:00
b8b71c7dd2
feat: add mod update check tasks
...
Those tasks take a list of mods and check on the mod providers for
updates. They assume that the mods have metadata already.
Signed-off-by: flow <flowlnlnln@gmail.com >
2022-07-17 11:33:42 -03:00
c3f6c3dd82
feat: add changelog to mod providers
...
The Modrinth changelog is fairly straight-forward, as it's given to us
directly with the API call we already did. Flame, on the other hand,
requires us to do another call to get the changelog, so it can introduce
quite a heavy performance impact. This way, we make it optional to get
such changelog.
Signed-off-by: flow <flowlnlnln@gmail.com >
2022-07-17 11:33:42 -03:00