Skip to content

#PR2 Community-PRs#264

Open
diaverso wants to merge 2 commits into
Foxlider:masterfrom
diaverso:pr/2-community-prs
Open

#PR2 Community-PRs#264
diaverso wants to merge 2 commits into
Foxlider:masterfrom
diaverso:pr/2-community-prs

Conversation

@diaverso
Copy link
Copy Markdown

@diaverso diaverso commented May 15, 2026

⬆️ Previous: #PR1 Bug-Fixes

This PR integrates community-submitted PRs that were open and pending merge:

ServerCfg.cs (#246):
Wrap LogObjectNotFound, SkipDescriptionParsing, ignoreMissionLoadErrors inside a class AdvancedOptions { }; block in server.cfg output.

BasicCfg.cs (#230):
Add configurable language setting (default "English"); replace hardcoded language="English" in ProcessFile() with the user-configured value. Adds a Language dropdown in the Profile UI.

ServerProfile.cs (#231):
Add 6 new command-line parameters: HugePages, BePath, ExThreads (0-7), LoadMissionToMemory, LimitFPS, EnableSteamLogs. Each is conditionally appended in GetCommandLine().

ModsViewModel.cs / Mods.xaml / Mods.xaml.cs (#198):
Add PurgeAndReinstallMod(), PurgeAndReinstallSelectedMods(), PurgeAndReinstallAll() - deletes mod folder and marks for re-download. Adds toolbar button and context menu item.

ModsViewModel.cs / Mods.xaml (#258):
Make CheckForUpdates() async with a 300ms delay between each mod to avoid Steam API rate limiting.

⬇️ Next: #PR3 Features

Foxlider#246, Foxlider#258

FASTER/Models/ServerCfg.cs
- Foxlider#246: Wrap LogObjectNotFound, SkipDescriptionParsing, ignoreMissionLoadErrors
  inside a class AdvancedOptions { }; block in server.cfg output

FASTER/Models/BasicCfg.cs
- Foxlider#230: Add configurable language setting (default "English") with
  RaisePropertyChanged; replace hardcoded language="English" in ProcessFile()

FASTER/Models/ServerProfile.cs
- Foxlider#231: Add HugePages (bool), BePath (string), ExThreads (int 0-7),
  LoadMissionToMemory (bool), LimitFPS (int), EnableSteamLogs (bool)
  properties with conditional inclusion in GetCommandLine()

FASTER/ViewModel/ProfileViewModel.cs
- Foxlider#230: Expose Languages observable collection from BasicCfgArrays
- Foxlider#231: Add SelectBePath() folder picker

FASTER/Views/Profile.xaml, FASTER/Views/Profile.xaml.cs
- Foxlider#230: Language ComboBox in Performance tab
- Foxlider#231: Controls for HugePages, BePath, ExThreads, LoadMissionToMemory,
  LimitFPS, EnableSteamLogs

FASTER/ViewModel/ModsViewModel.cs, FASTER/Views/Mods.xaml, FASTER/Views/Mods.xaml.cs
- Foxlider#198: Add PurgeAndReinstallMod(), PurgeAndReinstallSelectedMods(),
  PurgeAndReinstallAll() — delete mod folder and mark for re-download
- Foxlider#258: Make CheckForUpdates() async with 300ms delay between mods to
  avoid Steam rate limiting

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This was referenced May 15, 2026
diaverso added a commit to diaverso/FASTER that referenced this pull request May 15, 2026
…#264)

FASTER/Models/ServerProfile.cs
- S2365: FilteredProfileMods returned new List<>(_profileMods) copying
  the collection; changed return type to IReadOnlyList<ProfileMod> and
  return _profileMods.AsReadOnly() to avoid the copy

FASTER/Views/Mods.xaml.cs
- CS8602/SonarCloud: await on nullable Task (from ?. operator) can throw
  NullReferenceException when DataContext is null; replaced with
  'if (DataContext is ModsViewModel vm) await vm.Method()' pattern for
  CheckForUpdates_Click, PurgeAndReinstallAll_Click, PurgeUnusedMods_Click

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…#264)

FASTER/Models/ServerProfile.cs
- S2365: FilteredProfileMods returned new List<>(_profileMods) copying
  the collection; changed return type to IReadOnlyList<ProfileMod> and
  return _profileMods.AsReadOnly() to avoid the copy

FASTER/Views/Mods.xaml.cs
- CS8602/SonarCloud: await on nullable Task (from ?. operator) can throw
  NullReferenceException when DataContext is null; replaced with
  'if (DataContext is ModsViewModel vm) await vm.Method()' pattern for
  CheckForUpdates_Click, PurgeAndReinstallAll_Click, PurgeUnusedMods_Click

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@sonarqubecloud
Copy link
Copy Markdown

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant