Commit graph

267 commits

Author SHA1 Message Date
Wyvest
93fef599ae
add fabric loader updating 2026-03-31 00:41:24 -04:00
Wyvest
3b885cdb0f
Improve modpack download resiliency, onboarding
Track and surface partial modpack download failures across core and frontend. Adds a PartialModpackInstall error and counts failed/attempted downloads in the mrpack flow, returning an error if some files failed. Frontend download pipeline now runs parallel downloads that return per-item results, reports/logs failures, and exposes retry/continue UI in onboarding.

Backend robustness improvements: deduplicate concurrent package inserts by reusing existing row on unique-hash constraint, detect hard-link collisions and verify hashes before skipping or erroring, and return meaningful errors when partial installs occur.

Other changes: propagate richer error context when stamping migrated cluster created_at, invalidate relevant queries after migration, make settings writes awaitable and update the query cache optimistically, add queryClient usage in version-migration hook, and various type/bindings updates to reflect the new PartialModpackInstall error. These changes improve reliability and UX during batch package installs and onboarding downloads.
2026-03-30 05:50:29 -04:00
Wyvest
9f1b6d6ae2
Bump to 1.1.0 2026-03-30 03:26:27 -04:00
Wyvest
5cac13a54c
Add cluster migration stuff
Implement cluster content migration and local versions override. Adds a new IPC API (copy_cluster_content) and CopyClusterResult, plus copy_dir_all helper to recursively copy files. Introduces migrate_non_bundle_packages and migrate_bundles_to_cluster to map and install provider-managed packages for the target MC version and to translate/copy bundle overrides; files without a compatible provider version are copied as .disabled and returned to the caller. Prefer a local versions_override.json when loading the online manifest (useful for testing) and adapt MC version parsing/formatting for year-based majors. Frontend: update generated bindings/types, add MigrationModal UI and useVersionMigration hook, integrate the migration modal into the root and debug screens, and persist seen_versions in settings. Misc: propagate manifest/versions into several UI routes and adjust bundle/package handling accordingly.
2026-03-30 00:28:14 -04:00
Jacob
978732a8fa
feat: toasts customizability (#497)
* fix: Toasts always using the info icon

* feat: Toast Position Customizability

* feat: Toast duration customizability

* fix: send toast button

wide lol

* feat: toast auto close customizability

* fix: SettingNumber being bad
2026-03-08 16:50:50 +09:00
Jacob
adf9f4bd63
feat: debug page (#493)
* fix: discordRPC route sorting

It wasn't alphabetical and it was annoying me

* feat: debug page

* move stuff into hooks where they should be

* fix: building
2026-03-06 01:25:03 -05:00
Jacob
fb5da05ad9
feat: better debug (#486)
* fix: tauri os plugin not being fully loaded

* feat: debug keybind

Bound to `CTRL+SHIFT+D` (and `ALT+F12`) and copies the debug info to the
clipboard

* refactor: __root.tx

Clean up a lot of code and move them into there own files

* feat: os distro in debug

* refactor: get_full_debug_info_parsed

* feat: made by info in settings

Also made it so that you can click on it to copy debug info

* fix: warning in oneclient/desktop/lib.rs

* refactor: copyDebugInfo

Moved it to the backend to later be used

* feat: log out debug info when oneclient launches

* `inDev` -> `In Dev`

* feat: toggle debug logging

* fix rust compiler
2026-03-03 20:46:11 -05:00
Wyvest
79e6824891 Bump to 1.0.3 2026-03-01 05:19:17 -05:00
Wyvest
7bae85eb70 fix rust lint 2026-03-01 05:18:37 -05:00
Wyvest
ca80e7d6b2 Fix memory setting not updating 2026-03-01 04:47:55 -05:00
Wyvest
d90d9b928c 1.0.2 2026-02-26 00:17:50 -05:00
Wyvest
3e6f2361ee sanitize pre-launch/wrapper/post-launch command 2026-02-26 00:16:46 -05:00
Wyvest
44742fa21f port fixes from https://github.com/modrinth/code/pull/2369/ 2026-02-25 23:23:27 -05:00
Wyvest
aecfbad53a pass lint 2026-02-25 21:03:12 -05:00
Wyvest
e7bb7d6b70 Squashed commit of the following:
commit a782b683f30d127936115d0e31a70de1d8268694
Author: Wyvest <wyvestbusiness@gmail.com>
Date:   Wed Feb 25 20:56:05 2026 -0500

    remove debug logging

commit 640950728f480f1b8c7939a720124ea581c227af
Author: Wyvest <wyvestbusiness@gmail.com>
Date:   Wed Feb 25 14:40:03 2026 -0500

    add some ms account error parsing

commit 014e3ecb26d75934798592f5be8cfbb437c92263
Merge: 83a6a1e ecfb98b
Author: Wyvest <wyvestbusiness@gmail.com>
Date:   Wed Feb 25 13:34:16 2026 -0500

    Merge branch 'main' into account-logging

commit 83a6a1e233dd4f3a3de18aabf1c7beac268d1594
Author: Wyvest <wyvestbusiness@gmail.com>
Date:   Wed Feb 25 04:05:05 2026 -0500

    add a lot of debug logging for accounts
2026-02-25 20:56:21 -05:00
Wyvest
c515d00da1 lint 2026-02-25 08:14:57 -05:00
Wyvest
6811f3c41a Update discord.rs 2026-02-25 08:08:28 -05:00
Wyvest
6190411635 make discord rpc more stable 2026-02-25 06:36:31 -05:00
Wyvest
6c07a835b0 fix windows process check 2026-02-24 04:40:19 -05:00
Wyvest
a3d193fb4b fix strange freezes 2026-02-24 04:11:50 -05:00
Wyvest
926a4fdf6f bump to 1.0.1 2026-02-24 00:42:48 -05:00
Wyvest
bd85c8cdef 1.0.0 2026-02-23 22:45:33 -05:00
Wyvest
87cb86943c Add bundle update checking/apply and API
Introduce full bundle update management: adds bundle_updates module with checking, apply flow, per-cluster locking, subscription inference, and apply helpers for additions/updates/removals (plus unit and e2e test scaffold). Exposes new IPC/API methods (download_package_from_bundle, update_bundle_packages, is_bundle_syncing) and integrates bundle tracking in desktop commands. Adds bundle DAO/entity and migrations to support bundle_packages and bundle_overrides, updates related package/DAO/modpack code, and minor frontend bindings/components/hooks to surface the new functionality. Also adds sea-orm as a dev-dependency for the desktop crate.

Co-Authored-By: Jacob <contact@kath.lol>
2026-02-23 22:36:24 -05:00
Wyvest
64b3ec5f90 Squashed commit of the following:
commit 9d138882dec56d9f823a22dd2284b0f264a6b35a
Author: Wyvest <wyvestbusiness@gmail.com>
Date:   Mon Feb 23 17:14:58 2026 -0500

    Watch cluster dirs, toggle & custom-bundle support

    Enable filesystem watches and add support for directory-based packages, toggleable packages, and custom bundles.

    Highlights:
    - Enable tauri-plugin-fs "watch" feature and add fs:allow-watch capability.
    - Frontend: add useAllClusterDirWatch hook to watch cluster folders and call bindings.core.syncCluster on changes; add useCustomBundle to synthesize a "[Custom]" bundle for installed-but-unbundled packages and surface it in mods/datapacks/resource-packs/shaders routes via ModList/ModCard changes.
    - ModCard/ModList: introduce toggle mode (useToggleMode) to treat some bundles as toggleable; implement UI toggle behavior and skip interactivity for directory-based bundles.
    - Bindings: expose syncCluster and togglePackage in bindings.gen for IPC usage.
    - Backend: extend sync_cluster to detect directories, register directory-based packages as local, and reconcile/unlink DB links for files removed from disk; support removing directories when unlinking packages.
    - Backend API: add toggle_package to rename package files (.disabled toggling), update central store path, and return the new enabled state; add Tauri commands for sync_cluster and toggle_package.

    Reason: allow resourcepacks/shaders/datapacks stored as directories to be recognized as local packages, provide automatic sync on filesystem changes, and let users enable/disable packages by toggling their filenames.

commit 1b100f7ed2242d21f3fbb6229745cddbd3199db7
Merge: 4ea4216 6a2352c
Author: Wyvest <wyvestbusiness@gmail.com>
Date:   Mon Feb 23 06:30:25 2026 -0500

    Merge branch 'oneclient/main' into bruhhh

commit 4ea42169ad430bc8b127f829c528c258f49b5a3a
Author: Wyvest <wyvestbusiness@gmail.com>
Date:   Wed Dec 31 03:48:13 2025 +0900

    Fix external mod tracking

commit cb456f4f6d50165d05091ae65c9611ebf956df07
Merge: 8628380 18c37f8
Author: Wyvest <wyvestbusiness@gmail.com>
Date:   Wed Dec 31 01:48:00 2025 +0900

    Merge branch 'oneclient/main' into bruhhh

commit 86283800ab265361540f4cf20e9a843cb2c4f5f0
Author: Wyvest <wyvestbusiness@gmail.com>
Date:   Sun Dec 28 18:19:57 2025 +0900

    h
2026-02-23 17:15:26 -05:00
Wyvest
e745c75cc8 Fix overrides not being downloaded 2026-02-23 05:56:01 -05:00
Jacob
a513b62b0b
update shadow rs (#473) 2026-01-10 09:25:18 -05:00
Wyvest
ea7e5e816b bump to 1.0.0-alpha.6 2026-01-02 00:51:38 +09:00
Wyvest
b85d5f6930 refresh accounts function 2026-01-02 00:44:40 +09:00
Wyvest
d6359f7f5f Bump to 1.0.0-alpha.5 2025-12-31 03:51:14 +09:00
Wyvest
09749ea78b Track external mods properly 2025-12-31 03:51:14 +09:00
Wyvest
800f3ecbdb make chmod happen on linux too 2025-12-29 04:06:45 +09:00
Wyvest
ac7b3dbcad bump to alpha.4 2025-12-29 00:24:21 +09:00
Wyvest
2e0d04d6d0 actually implement "enabled" for mods / categories 2025-12-29 00:23:26 +09:00
Wyvest
45859d174b Make MS login window bigger
Closes #455
2025-12-27 21:01:59 +09:00
Wyvest
a2329b59a5 Fix cluster being stuck on downloading 2025-12-27 02:21:15 +09:00
Wyvest
60e5356120 bump to alpha.3 2025-12-27 01:56:14 +09:00
Wyvest
027a003ace bump to alpha.2 2025-12-26 23:44:04 +09:00
Wyvest
5db97bc9ed implement caching for modrinth projects/versions 2025-12-26 21:46:05 +09:00
Wyvest
d69b652726 Remove max concurrent request limit 2025-12-26 20:12:09 +09:00
Wyvest
80c7797ad1 Don't search for external JDKs in OneClient 2025-12-26 20:07:51 +09:00
Wyvest
fbb30b7187 fix ansi reading for mc options.txt 2025-12-26 19:48:43 +09:00
Wyvest
6cea998f08 bump verson to 1.0.0-alpha.1 2025-12-26 00:10:35 +09:00
Wyvest
373147505c ease concurrent request limit 2025-12-25 23:53:38 +09:00
Wyvest
bcb2bd94af add rate limit check specifically for modrinth 2025-12-25 23:52:37 +09:00
Wyvest
f8b307d005 add concurrency request limits 2025-12-25 22:49:25 +09:00
Wyvest
403a9f4be8 fix mod cards, removing mods 2025-12-25 21:18:07 +09:00
LynithDev
05657bf8b3 fix: rewrote ingress emitting system. should fix https://github.com/Polyfrost/OneLauncher/issues/419 and https://github.com/Polyfrost/OneLauncher/issues/420 2025-12-22 12:33:15 +01:00
Jacob
d5a5bd7f05
refactor/cleanup (#426) 2025-12-12 07:44:54 -05:00
Wyvest
aa5fb07718 remove debug 2025-12-04 03:47:51 -05:00
Wyvest
c1d6a66015 Merge branch 'oneclient/main' of https://github.com/Polyfrost/OneLauncher into oneclient/main 2025-12-04 03:46:07 -05:00