* feat: added migration mechanism for versions 26.3 and above
* feat: added checking for mods that the migrating target already has
* feat: added scheduled migrations for up to 30 days
* feat: added button in cluster settings for manual migratting; added migratting disabled mods with status saving
* feat: added checking for show_initial_migration flag in metadata.json
* feat: added fabric -> orinthe migration (for 1.8.9)
* chore: force open from debug page
* chore: change some UI elements
* fix: don't migrate packages whose dependency failed to install
* fix: keep checking the release migration waitlist past a broken cluster
* fix: make Migrate on a debug fake plan a no-op
* perf: install the version the migration plan already fetched
* chore: fix the clippy warnings the release migration added
* refactor: open every release migration prompt through one helper
* chore(lint): cargo fmt the release migration code
* fix: check the release migration waitlist queries at compile time
---------
Co-authored-by: LynithDev <61880709+LynithDev@users.noreply.github.com>
* feat: added worlds and datapacks tab
* feat: added datapacks in browser; fixed datapacks view loading too long
* feat: added icons to datapacks
* fix: scope world query invalidation to the world that changed
* fix: keep the selected data pack world in one place and guard deletes
* chore: share one dialog shell between the world prompt and delete confirm
* fix: stop watching every subfolder of saves
---------
Co-authored-by: LynithDev <61880709+LynithDev@users.noreply.github.com>
* feat: added sections for advanced mods
* fix: treat a null bundle file type as normal
* chore: drop ScrollArea::lazy_grid
* chore: pass one header height to lazy_sections
* chore: name BundleFileType::Normal in test fixtures
* feat: don't offer advanced bundle mods as optional mods
---------
Co-authored-by: LynithDev <61880709+LynithDev@users.noreply.github.com>
* feat: first version of flagging mods thru datastorage
* feat: added fallbacks, version-specific flag and project-specific flag
* chore: downsized the amount of requests sent when looking up for alternatives
* feat: added explanations for flagging mods
* fix: prompt for flagged dependencies instead of silently skipping them
* chore: size the flagged popup with max_height instead of measuring it
* chore: drop is_flagged and the explanation size cap
* feat: refresh the bad mods list with the pre-launch checks
---------
Co-authored-by: LynithDev <61880709+LynithDev@users.noreply.github.com>
* feat: added support for github hosted bundle mods
* fix: keep external bundle mods when their manifest entry gains an id
* fix: match a pending external bundle update to its installed jar
* chore: parse the bundle file host with url instead of by hand
* fix: namespace external bundle file ids under ext:
* chore: rename the Browser tab to Online and list unbundled GitHub mods there
---------
Co-authored-by: LynithDev <61880709+LynithDev@users.noreply.github.com>
* feat: added deleting browser and local mods by context menu and on list view by trashcan icon
* fix: only confirm shared deletes that reach other clusters
* fix: confirm shared removals from the browser package page too
* fix: keep "View in folder" alive after the context menu closes
---------
Co-authored-by: LynithDev <61880709+LynithDev@users.noreply.github.com>
* fix: stop offering bundle-owned packages in the update modal
* fix: match a version's game versions exactly not by substring
* fix: resolve a mod's materialized root from the layout in use
* fix: stop parking unclaimed jars in the cluster mods folder
* fix: stop the duplicate reconciler filing a user-disabled override
* fix: repair the disables duplicate resolution left behind
* feat: added microsoft sdk provider
* feat: changed the default provider to microsoft everywhere
* feat: added checking for microsoft jdks and prompting user to install them (ui for discussion)
* feat: added toast popup when user tries to remove runtime that is pinned to some cluster
* feat: added 'migrating' user to the microsoft jdks
* feat: changed reading mods from cluster folders on launch to having cluster folders symlinks in the shared .minecraft folder where mods stay per given cluster; changed resource packs and shader packs from working per cluster to global, every resource pack and shader pack is now being shared between clusters; added mods disabling whenever a mod is manually removed from the mods folder
* fix/feat: fixed hardlinks counting as a duplicate of files it was pointing to (windows); added a progress bar to the disk storage view in settings
* chore: connected microsoft jdk branch and package folder management one
---------
Co-authored-by: LynithDev <61880709+LynithDev@users.noreply.github.com>