Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Refactor some auto splitter and linking code (LiveSplit#40)
This updates all of our dependencies, in particular `livesplit-core` now uses the latest version of `wasmtime` again, it was stuck on an old version. While updating I noticed that `hyperx` has upper bounds for all of its dependencies, which made me rip out that dependency, which led me to refactor a bunch of the auto splitting code. A lot more of the auto splitting code now resides within that module, the error messages use `anyhow` to build a nice chain of reasoning for the errors and removing the `hyperx` crate forced me to modify retrieving the file name of the downloaded files. The file names are now simply extracted from the URL, which should honestly be fine. This should've been done as at least a backup to the `Content-Disposition` header anyway. Maybe we can eventually bring the `Content-Disposition` handling back. Additionally, this now links against `OBS` differently on Windows. Rust recently stabilized support for `raw-dylib`. On Windows you usually link against `.lib` files, not against `.dll`s. Sometimes you may want to link against a `.dll` however that you don't have a `.lib` file for. With `raw-dylib` as the link type, you can now skip the `.lib` file entirely on Windows and still link against a `.dll`. In fact, you still don't need a `.dll`, so we can now skip building our fake `.dll` on Windows entirely. We also don't need it anymore on macOS as we for now link against the real framework provided by OBS there.
- Loading branch information