aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2023-03-28feat: i18n (#182)Rémy Raes
* build: add vue-i18n dependency * feat: add i18n plugin to vue project * feat: use translations in play button * feat: translate play view * feat: translate menu items * feat: translate local mods view * feat: translate online mods view * feat: translate mods menu * feat: translate thunderstore mod card component * fix: remove useless "this" keyword * feat: translate settings view * fix: remove leftover test invocation * feat: add language selector component * feat: using language selector updates interface's language * feat: save language in persistent store on selector change * feat: initialize lang on app launch * refactor: move i18n code into App.mounted callback * feat: update interface language on app launch * feat: adjust language selection on language selector load * fix: this.$root can't be null * feat: translate store notifications * fix: add missing parameter to english translation * feat: translate "by" author keyword * feat: translate repair window * feat: translate repair window title * docs: add some documentation regarding localization * docs: explain how to add a new language * feat: translate Northstar release canal selector elements * docs: describe how to inject variable into translations * feat: translate "info" word * feat: translate popconfirm buttons * fix: remove "this" keyword * fix: save store when updating interface language
2023-03-27fix: Various clippy fixes (#243)GeckoEidechse
* fix: Remove redundant return * fix: Remove unnecessary borrow * fix: Remove unnecessary import * fix: Use char for single character replacement instead of string * fix: Iterate over values directly instead of key-value pair * fix: Remove unnecessary let binding * fix: Remove unnecessary return statement * fix: Use char for single character replacement instead of string * refactor: Use struct short hand initialization
2023-03-27fix: Replace `<=0` with `.is_empty()` (#244)GeckoEidechse
2023-03-27feat: Generate FlightCore release notes (#188)GeckoEidechse
* feat: Generate FlightCore release notes * fix: Remove leftover comment * fix: Add missing semantic commit type * fix: Re-add newlines accidentally removed in merge * refactor: Remove contributors section Will re-add a proper implementation in a later PR. * fix: Revert accidentally modified line * docs: Update comments * fix: Use correct user-agent * fix: Put unknown commits into "Other" section Previously they were just dropped * refactor: Move constant string array to right file * fix: Remove debug prints * refactor: Move lib import to start of file * refactor: Use wrapper type kinda needed by selector in frontend. Allows for still passing full object to backend for future extensability * fix: Generate missing wrapper TS interface * fix: Add title and message to notification * refactor: Move constant to consts file * fix: Fix formatting * fix: Remove unnecessary property declaration
2023-03-27chore: Bump FlightCore version to 1.11.1v1.11.1GeckoEidechse
2023-03-27fix: Address regression around persistent store (#227)GeckoEidechse
* fix: Pin tauri-plugin-store package to same commit Pin npm package to same commit as Rust crate * fix: Attempt using newest plugin store commit * fix: Perform explicit save to store on each change This seems to resolve the issue around no longer writing changes to store on close as now values are written on each change. * chore: Pin dependencies to specific commit Instead of tracking a branch, track a specific commit
2023-03-26fix: Remove redundant string conversions (#242)GeckoEidechse
As pointed out by clippy
2023-03-26chore: Bump FlightCore version to 1.11.0v1.11.0GeckoEidechse
2023-03-26refactor: Replace all `println!()` with log statements (#236)GeckoEidechse
* refactor: Replace all println with calls to logger in `do_install()` * refactor: Replace all println with calls to logger in `verify_install_location()` * refactor: Replace all println with calls to logger in `get_northstar_release_notes()` * refactor: Replace all println with calls to logger in `update_northstar_caller()` * refactor: Replace all println with calls to logger in `install_northstar_caller()` * refactor: Replace all println with calls to logger in `apply_launcher_pr()` * refactor: Replace all println with calls to logger in `apply_mods_pr()` * refactor: Replace all println with calls to logger in `find_game_install_location()` * refactor: Replace all println with calls to logger in `install_mod_caller()` * refactor: Replace all println with calls to logger in `set_mod_enabled_status()` * refactor: Replace all println with calls to logger in `parse_installed_mods()` * refactor: Replace all println with calls to logger in `origin_install_location_detection()` * refactor: Replace all println with calls to logger in `query_thunderstore_packages_api()` * refactor: Replace all println with calls to logger in `add_batch_file()` * refactor: Replace all println with calls to logger in `extract()` * refactor: Replace all println with calls to logger in `check_is_northstar_outdated()`
2023-03-26chore: Add License (#239)GeckoEidechse
2023-03-26fix: Adjust code for single iteration loop (#232)GeckoEidechse
* fix: Adjust code for single iteration loop `clippy` said this is way is better... * refactor: Implement more compact suggestion * refactor: Implement more compact suggestion
2023-03-26fix: Remove unnecessary borrows (#231)GeckoEidechse
According to `clippy`
2023-03-25fix: Update comment regarding Origin install (#237)GeckoEidechse
We no longer run a powershell command to get it
2023-03-22fix: Address clippy warnings regarding format!() (#229)GeckoEidechse
Use the varible name directly inside the string
2023-03-22fix: Remove unnecessary `.to_string()` (#230)GeckoEidechse
Thanks clippy <3
2023-03-22feat: Refresh statistics (#228)Rémy Raes
* feat: fetch stats every 5 minutes and ping front with received information * feat: update front on stats reception * style: format code * fix: Add comment --------- Co-authored-by: GeckoEidechse <40122905+GeckoEidechse@users.noreply.github.com>
2023-03-22fix: Address clippy errors in glibc parsing code (#226)GeckoEidechse
2023-03-21Add buttons to download PRs (#203)GeckoEidechse
* feat: Add button to download Mods PR Simply opens the browser on the repo download link * feat: Add button to download Launcher PR Uses existing function to fetch nightly.link link and opens it in browser * refactor: Open Mods PR download link via TS as opposed to having a link directly This way it acts the same way as the Launcher PR download button. Reason behind this change being consistent UI style. * chore: Revert introduced formatting changes Those were added by accident, whoops * fix: Remove introduced unused dependency * fix: Remove unused dependencies
2023-03-21feat: Proper logging (#223)GeckoEidechse
* feat: Initial setup of sentry logging * refactor: Replace some println with log call Not replacing all cause too large diff
2023-03-20fix: Add error handling if default EA App path (#211)GeckoEidechse
* fix: Add error handling if default EA App path We cannot install to `C:\Program Files\EA Games\Titanfall2` cause Windows™ As such if install fails we check for that path and show according error message * fix: Check only for `Program Files` path instead of the full one As the issue is technically the permissions with `Program Files`, not the EA Games subdirectory... * fix: Format check error
2023-03-19chore: Bump FlightCore version to 1.10.2v1.10.2GeckoEidechse
2023-03-19chore: Format Cargo.toml (#222)GeckoEidechse
Running `cargo add SOME_CRATE` formats the config file this way so might as well fix the formatting now
2023-03-19refactor: Fix PR downloads permission issue (#217)GeckoEidechse
* fix: Download PRs into Titanfall2 folder Avoids any folder write permission issues * fix: Download Mod PRs into Titanfall2 folder Avoids any folder write permission issues * build: Add libraries for zip extract * refactor: Download mods zip into memory and extract it from there directly into Titanfall2 dir * fix: Stop creating unneeded temp download folder * refactor: Download launcher zip into memory and extract it from there into a temp folder then only copy out necessary files and delete the rest * docs: Add comment * refactor: Remove unused functions * fix: Smoothly handle misformatted zip file Usually caused by the downloaded file not actually being a zip Catches the error and displays error message if it occurs. * feat: Exit early if download was unsuccessful * chore: Remove leftover commented out code * fix: Write mod files into correct subdirectory Was writing them into parent instead by accident which meant that Northstar wouldn't actually find it. * refactor: Define profile path once Instead of recreating the string everytime
2023-03-19feat: Increase time mods PR install notification is shown (#221)GeckoEidechse
feat: Increase time mods PR notification is shown So as to not destroy it while user is still reading it
2023-03-19build: Update outdated checkout action (#220)GeckoEidechse
2023-03-19build: Replace unmaintained action (#210)GeckoEidechse
* build: Replace unmaintained action Replaces actions-rs/toolchain with dtolnay/rust-toolchain and updates some more code in the process. * build: Do format check by invoking cargo directly Instead of relying on unmaintained and outdated action * build: Replace action for getting rust toolchain Use dtolnay/rust-toolchain instead of unmaintained actions-rs/toolchain * build: Replace action for getting rust toolchain Use dtolnay/rust-toolchain instead of unmaintained actions-rs/toolchain * build: Replace action for getting rust toolchain Use dtolnay/rust-toolchain instead of unmaintained actions-rs/toolchain * fix: Correct syntax error
2023-03-14chore: Bump FlightCore version to 1.10.1v1.10.1GeckoEidechse
2023-03-13feat: Add some breadcrumbs printing install path (#206)GeckoEidechse
This will show up in sentry dashboard on crash and will help me solve a thread crash that's caused by Northstar failing to get installed.
2023-03-12chore: Bump FlightCore version to 1.10.0v1.10.0GeckoEidechse
2023-03-12feat: Move open repair window button to settings (#208)GeckoEidechse
This makes it now "publicly" available
2023-03-12refactor: Move buttons to repair window (#207)GeckoEidechse
2023-03-12feat: Allow opening a window with various repair features (#129)GeckoEidechse
* feat: Initial code for spawning repair window * refactor: Move disable all but core mods button to repair window * refactor: Rename function * refactor: Move button location Still in DeveloperView for now, will be moved to settings page later * feat: Add info banner * feat: Set repair window title * fix: Stop thread crash on duplicate window open Instead of calling an unwrap, handle failure to create window which is usually caused by spawning a second repair window although one already exists. * fix: Re-add accidentally removed lines from merge * fix: Set top padding to zero px As there's no menu bar in this view * feat: Close all windows when close bttn is clicked
2023-03-08chore: Bump FlightCore version to 1.9.1v1.9.1GeckoEidechse
2023-03-08build: Upload Windows pdb to Sentry via CI (#205)GeckoEidechse
Uploads the Windows debug symbols to sentry.io via CI
2023-03-05chore: Bump libthermite to 0.5.3 (#199)GeckoEidechse
This adds a change needed for making progressbar work on dowload
2023-03-02chore: Bump FlightCore version to 1.9.0v1.9.0GeckoEidechse
2023-03-02chore: Bump checkout action to v3 (#196)GeckoEidechse
2023-03-02chore: Bump all dependencies (#198)GeckoEidechse
2023-03-02feat: Allow installing PRs from DeveloperView (#139)GeckoEidechse
* feat: Initial backend code to get list of PRs Hardcoded for launcher right now * refactor: Autogen TS bindings from Rust code using `ts-rs` as done in #140 * fix: Fix incorrect typing What is returned is actually an array of `PullsApiResponseElement` * feat: Prototyping frontend UI for installing PR * fix: Use right repo Used Mods instead of Launcher * feat: Enable installing launcher pull request * refactor: Rename variables to indicate approp repo NorthstarLauncher vs NorthstarMods * style: Formatting fixes * feat: Initial code for getting mods PRs * feat: Add backend code for installing mods PRs * feat: Add note about launching in notification * fix: Remove commented out code * refactor: Depduplicate code * refactor: Remove unnecessary use of anyhow * refactor: Use already existing function for checking game path * feat: Add comment about profile / batch file * chore: Remove leftover print statements * feat: Add clickable link for each PR * refactor: Reduce duplicate code * refactor: Rename enum * fix: Use proper type * fix: Remove leftover `console.log`s * style: Revert accidental formatting change * refactor: Remove second API call for mods PRs * refactor: Rename variable * refactor: Remove second API call for launcher PRs * refactor: Move API URL string to `constants.rs` So that all constants are in a single place * fix: Restore lines deleted in merge * style: Formatting fixes * fix: Print line when done installing PR * feat: Show notification for install start/done Displays a notification that PR install has started and upon completion replaces it with one saying that install has completed. * fix: Remove left-over console log * feat: "Install PR" UI (#197) * refactor: export pull requests selector to dedicated component * refactor: regroup launcher+mods collapses in one collapse component * refactor: load pull requests when opening selector collapse item * refactor: review progress loaders' style * fix: don't fetch PRs if they've already been loaded * feat: update collapse style * refactor: remove fetch success notification * refactor: both collapses can be opened at the same time * fix: non-accordion collapse sends an object as event parameter * fix: Iterate over multiple pages of GitHub CI API This ensures we can still grab older artifacts. Max page is capped at 10 as going too high will cause us to hit API rate limits. Also refined error message accordingly. * refactor: Move stored PRs to submodule as suggested in review * refactor: Move getPullRequests to store submodule I order to clean up PullRequestSelector.vue Other functions will follow in separate commits. Currently TypeScript compilation fails on undefined type of `state` * fix: Properly define state type * refactor: Move installLauncherPR to store submodule * refactor: Move installModsPR to store submodule --------- Co-authored-by: Rémy Raes <contact@remyraes.com>
2023-03-01chore: Bump FlightCore version to 1.8.3v1.8.3GeckoEidechse
2023-03-01build: Keep line tables in release builds (#191)GeckoEidechse
* build: Keep line tables in release builds
2023-03-01chore: Bump sentry to 0.30.0 (#195)GeckoEidechse
* chore: Bump sentry to 0.30.0 * chore: Bump Rust version to 1.66 `sentry` raises minimum required version to `1.66`
2023-02-26chore: Bump FlightCore version to 1.8.2v1.8.2GeckoEidechse
2023-02-26fix: Update path of release file file locationGeckoEidechse
Got broken with 339073a89c49c789bb572bb6635f817d02822afe as now we have an additional file uploaded which means the artifact upload action has to take a directory parent into consideration as well and that changes the folder structure
2023-02-26chore: Bump FlightCore version to 1.8.1v1.8.1GeckoEidechse
2023-02-26build: Upload Windows `.pdb` (#192)GeckoEidechse
* build: Upload pdb as well * build: Upload Windows pdb on release build
2023-02-25build: Separate zips for artifacts for Windows and Linux (#187)GeckoEidechse
* build: Separate zips for artifacts for Windows and Linux * fix: Ensure separate folders
2023-02-25build: Add Volar to recommended vscode extensions (#190)GeckoEidechse
feat: Add Volar to recommended vscode extensions
2023-02-25refactor: Properly set cfg macro for OS conditional compilation (#186)GeckoEidechse
* refactor: Properly set cfg macro for OS conditional compilation * docs: Add comment about MacOS
2023-02-25feat: Add button to force reinstall Northstar (#154)GeckoEidechse
* feat: Add button to force reinstall Northstar Useful for reinstalling Northstar after installing a developer version. * fix: Remove leftover `console.log()` * fix: Properly update which NS is installed * feat: Show notification when done Sends a notification to indicate that reinstall process has started and sends a second one once the process has finished/failed while also clearing the old notification.