* Initial bug fixes
* fix compile error on non-mac
* Fix even more bugs
* Fix more
* fix more
* fix build
* fix build
* working basic
* removed zip
* working functions
* merge fixes
* fixed loadintg bar bug
* changed to one layer deep
* forge version numbers
* overrides dont include mrpack
* merge
* fixes
* fixes
* fixed deletion
* merge errors
* force sync before export
* removed testing
* missed line
* removed console log
* mac error reverted
---------
Co-authored-by: Jai A <jaiagr+gpg@pm.me>
* now utilizing tracing better
* better tracing
* fix mac vs pc oppositional env var issue
* modified loading package
* added droppable loadingbarid that sends completion message
* loading bar
* regressed bug on mac
* fixed non-updated loading bar on playground
* Loading bar improvements
---------
Co-authored-by: Jai A <jaiagr+gpg@pm.me>
* added theme; env change
* began refactoring
* added process hook
* now singular string for each hook
* fixed splitting by comma to by space
* profile_create function updated
* prettier
* added jre validator
* restructured so that it doesnt look like a vec
* fixed merge issue
* snake case
* resolved merge issues + added process events
* clippy, fmt
* removed unnecssary func
* child process api
* added hook to js
* process API + restructured process state storage
* formatting
* added path-pid check and fixed probs
* prettier
* added profile checking function
---------
Co-authored-by: Wyatt <wyatt@modrinth.com>
* Initial authentication implementation
* Store user info in the database, improve encapsulation in profiles
* Add user list, remove unused dependencies, add spantraces
* Implement user remove, update UUID crate
* Add user set-default
* Revert submodule macro usage
* Make tracing significantly less verbose
The launcher code was in a position ripe for sphagetti, so this rewrites it in a more robust way.
In addition to cleaner code, this provides the following changes:
- Removal of obsolete Mojang authentication
- The rebasing of some internal state into a Sled database
- Tweaks which make some internal mechanisms more robust (e.g. profiles which fail to load can be removed)
- Additional tooling integration such as direnv
- Distinct public API to avoid messing with too much internal code
- Unified error handling in the form of `theseus::Error` and `theseus::Result`