* move console stuff from loader
* compile platform sources only per platform
* move ipc from loader
* move updater from loader
* remove Loader::didLastLaunchCrash
* remove platformdata from loader
* move updaters events and filters too
very breaking change! though not annoying to upgrade. this change was
done because matjson is not really meant to be a "do everything" json
library, so taking up the very common `json` identifier was troublesome.
The previous library we used (picosha3) returned a wrong hash for one
particular file. Though this was quite rare (we only found 1 such file),
it was a bug with the library regardless.
The current sha3 library now comes from
https://github.com/stbrumme/hash-library
- add ability to automatically create a draft release
- change windows to windows-latest
- unify "Unzip CLI" and "Add CLI to Path"
- remove out folder
- prevent unnecessary files from generating on windows
- leave resources in platform-specific artifacts
- unify "Package MacOS" and "Package Windows"
- use steps outputs instead of env variables for storing version/hash
compilation still won't work, pending implementations for gdstl/codegen/tuliphook. the first two should be mostly done already. may also be good to get FileWatcher, crashlog, and the file picker implemented but they aren't necessary
the libcurl.a and libssl.a files were built using
https://github.com/ibaoger/libcurl-android. they are placed in the link/android folder because putting them in the link folder confused the macOS build.
once built, the geode binary should be loaded after nativeSetApkPath is ran (otherwise the directory setup crashes). in the future it would be nice if the internal mod also did save data path redirection, as base GD is incapable of doing this
Co-authored-by: mat <26722564+matcool@users.noreply.github.com>