From 6bf75cd46efddba583ff3cb247b7692df93b4006 Mon Sep 17 00:00:00 2001
From: Liam Cannon <54691085+liamcannon@users.noreply.github.com>
Date: Wed, 16 Jul 2025 00:45:36 -0400
Subject: [PATCH 1/7] forked bytex and updated to use steamkit 3.3, updated
faster to dotnet 9 =)
---
.gitmodules | 3 +++
BytexDigital.Steam | 1 +
FASTER.sln | 8 ++++++--
FASTER/FASTER.csproj | 6 ++++--
FASTER/ViewModel/ModsViewModel.cs | 4 +++-
FASTERTests/FASTERTests.csproj | 2 +-
6 files changed, 18 insertions(+), 6 deletions(-)
create mode 100644 .gitmodules
create mode 160000 BytexDigital.Steam
diff --git a/.gitmodules b/.gitmodules
new file mode 100644
index 0000000..2f25e9a
--- /dev/null
+++ b/.gitmodules
@@ -0,0 +1,3 @@
+[submodule "BytexDigital.Steam"]
+ path = BytexDigital.Steam
+ url = https://github.com/BytexDigital/BytexDigital.Steam.git
diff --git a/BytexDigital.Steam b/BytexDigital.Steam
new file mode 160000
index 0000000..f7189ce
--- /dev/null
+++ b/BytexDigital.Steam
@@ -0,0 +1 @@
+Subproject commit f7189ce7c2dc4dff0b7c0dd6181f9057c43c859f
diff --git a/FASTER.sln b/FASTER.sln
index 3b729fd..f1d21f6 100644
--- a/FASTER.sln
+++ b/FASTER.sln
@@ -13,15 +13,15 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution
.github\workflows\codeql-analysis.yml = .github\workflows\codeql-analysis.yml
FASTER_Version.xml = FASTER_Version.xml
NuGet.Config = NuGet.Config
- .github\workflows\publish.yml = .github\workflows\publish.yml
README.md = README.md
- .github\workflows\release.yml = .github\workflows\release.yml
EndProjectSection
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "FASTERTests", "FASTERTests\FASTERTests.csproj", "{65FDF864-BF9B-414A-A6E6-3473BCFB62BE}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "FASTER Maintenance", "FASTER Maintenance\FASTER Maintenance.csproj", "{465FB100-A08C-4E4F-A321-EC85C5C177B3}"
EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "BytexDigital.Steam", "BytexDigital.Steam\BytexDigital.Steam\BytexDigital.Steam.csproj", "{22F5B346-B3B2-302D-9D68-35A2DFCE2081}"
+EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
@@ -38,6 +38,10 @@ Global
{65FDF864-BF9B-414A-A6E6-3473BCFB62BE}.Release|Any CPU.Build.0 = Release|Any CPU
{465FB100-A08C-4E4F-A321-EC85C5C177B3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{465FB100-A08C-4E4F-A321-EC85C5C177B3}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {22F5B346-B3B2-302D-9D68-35A2DFCE2081}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {22F5B346-B3B2-302D-9D68-35A2DFCE2081}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {22F5B346-B3B2-302D-9D68-35A2DFCE2081}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {22F5B346-B3B2-302D-9D68-35A2DFCE2081}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
diff --git a/FASTER/FASTER.csproj b/FASTER/FASTER.csproj
index 1bda8f1..7207590 100644
--- a/FASTER/FASTER.csproj
+++ b/FASTER/FASTER.csproj
@@ -1,7 +1,7 @@
WinExe
- net8.0-windows
+ net9.0-windows
enable
enable
true
@@ -63,7 +63,6 @@
-
@@ -75,4 +74,7 @@
+
+
+
diff --git a/FASTER/ViewModel/ModsViewModel.cs b/FASTER/ViewModel/ModsViewModel.cs
index 4070d03..f560b6e 100644
--- a/FASTER/ViewModel/ModsViewModel.cs
+++ b/FASTER/ViewModel/ModsViewModel.cs
@@ -17,7 +17,9 @@ namespace FASTER.ViewModel
public class ModsViewModel
{
public ModsViewModel()
- { ModsCollection = Properties.Settings.Default.armaMods ?? new ArmaModCollection(); }
+ {
+ ModsCollection = Properties.Settings.Default.armaMods ?? new ArmaModCollection();
+ }
public ArmaModCollection ModsCollection { get; set; }
diff --git a/FASTERTests/FASTERTests.csproj b/FASTERTests/FASTERTests.csproj
index e56945d..d5436c0 100644
--- a/FASTERTests/FASTERTests.csproj
+++ b/FASTERTests/FASTERTests.csproj
@@ -1,6 +1,6 @@
- net8.0-windows
+ net9.0-windows
false
From 7ffc48704c2750511f51f69959f3409f0c179962 Mon Sep 17 00:00:00 2001
From: Liam Cannon <54691085+liamcannon@users.noreply.github.com>
Date: Wed, 16 Jul 2025 00:47:50 -0400
Subject: [PATCH 2/7] pointed submodule to correct repo
---
.gitmodules | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.gitmodules b/.gitmodules
index 2f25e9a..2ec42d8 100644
--- a/.gitmodules
+++ b/.gitmodules
@@ -1,3 +1,3 @@
[submodule "BytexDigital.Steam"]
path = BytexDigital.Steam
- url = https://github.com/BytexDigital/BytexDigital.Steam.git
+ url = https://github.com/liamcannon/BytexDigital.Steam.git
From 5a82516f9803c6f687d975f8dff8ff311d03e552 Mon Sep 17 00:00:00 2001
From: Keelah Atom
Date: Wed, 16 Jul 2025 13:57:53 +0200
Subject: [PATCH 3/7] Configures CI and build settings
- Reverts CodeQL analysis to use ubuntu-latest runner due to memory issues.
- Enables fetching submodules in CodeQL analysis workflow to ensure proper analysis.
- Disables fetching submodules in release workflow and sets fetch-depth to 0 for tag history processing.
- Enables Windows targeting and sets publish ready to run options.
---
.github/workflows/codeql-analysis.yml | 17 ++++++++++++-----
.github/workflows/release.yml | 3 +++
FASTER.sln | 2 ++
FASTER/FASTER.csproj | 3 ++-
4 files changed, 19 insertions(+), 6 deletions(-)
diff --git a/.github/workflows/codeql-analysis.yml b/.github/workflows/codeql-analysis.yml
index c2b1d31..15f8dae 100644
--- a/.github/workflows/codeql-analysis.yml
+++ b/.github/workflows/codeql-analysis.yml
@@ -13,8 +13,8 @@ on:
jobs:
analyzeQL:
name: Analyze with CodeQL
- # runs-on: [windows-latest] # may cause Out of Memory errors
- runs-on: [self-hosted]
+ runs-on: [ubuntu-latest] # may cause Out of Memory errors
+ # runs-on: [self-hosted]
permissions:
# required for all workflows
@@ -31,17 +31,18 @@ jobs:
steps:
- name: Checkout repository
uses: actions/checkout@v4
+ with:
+ submodules: true
- name: Initialize CodeQL
uses: github/codeql-action/init@v3
with:
languages: ${{ matrix.language }}
-
- name: Setup .NET Core SDK
uses: actions/setup-dotnet@v4.0.0
with:
- dotnet-version: ${{vars.DOTNET_VERSION}}
+ dotnet-version: ${{env.DOTNET_VERSION}}
- name: Restore Solution
run: dotnet restore ./FASTER.sln
@@ -85,8 +86,14 @@ jobs:
- uses: actions/checkout@v4
with:
+ submodules: true
fetch-depth: 0 # Shallow clones should be disabled for a better relevancy of analysis
-
+
+ - name: Setup .NET Core SDK
+ uses: actions/setup-dotnet@v4.0.0
+ with:
+ dotnet-version: ${{env.DOTNET_VERSION}}
+
- name: Cache SonarCloud packages
uses: actions/cache@v4
with:
diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml
index 7fad935..3e40642 100644
--- a/.github/workflows/release.yml
+++ b/.github/workflows/release.yml
@@ -43,6 +43,8 @@ jobs:
steps:
- name: Checkout
uses: actions/checkout@v4
+ with:
+ submodules: false
# Install the .NET Core workload
- name: Install .NET Core
@@ -91,6 +93,7 @@ jobs:
- name: Checkout
uses: actions/checkout@v4
with:
+ submodules: false
fetch-depth: 0 # required for tags history processing
- name: Download x64 artifact
diff --git a/FASTER.sln b/FASTER.sln
index f1d21f6..4709255 100644
--- a/FASTER.sln
+++ b/FASTER.sln
@@ -13,7 +13,9 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution
.github\workflows\codeql-analysis.yml = .github\workflows\codeql-analysis.yml
FASTER_Version.xml = FASTER_Version.xml
NuGet.Config = NuGet.Config
+ .github\workflows\publish.yml = .github\workflows\publish.yml
README.md = README.md
+ .github\workflows\release.yml = .github\workflows\release.yml
EndProjectSection
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "FASTERTests", "FASTERTests\FASTERTests.csproj", "{65FDF864-BF9B-414A-A6E6-3473BCFB62BE}"
diff --git a/FASTER/FASTER.csproj b/FASTER/FASTER.csproj
index 7207590..56724af 100644
--- a/FASTER/FASTER.csproj
+++ b/FASTER/FASTER.csproj
@@ -2,6 +2,7 @@
WinExe
net9.0-windows
+ true
enable
enable
true
@@ -18,7 +19,7 @@
README.md
https://github.com/Foxlider/FASTER
LICENSE
-
+
true
true
true
From ca91f42b7a4d8b49e05ba76ed0289568ca496284 Mon Sep 17 00:00:00 2001
From: Keelah Atom
Date: Wed, 16 Jul 2025 14:55:02 +0200
Subject: [PATCH 4/7] Adds global.json file for .NET SDK configuration
Adds a global.json file to specify the .NET SDK version and rollForward policy.
This ensures consistent builds and development environments by pinning the SDK version.
---
FASTER.sln | 1 +
global.json | 6 ++++++
2 files changed, 7 insertions(+)
create mode 100644 global.json
diff --git a/FASTER.sln b/FASTER.sln
index 4709255..c858ee9 100644
--- a/FASTER.sln
+++ b/FASTER.sln
@@ -12,6 +12,7 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution
azure-pipelines.yml = azure-pipelines.yml
.github\workflows\codeql-analysis.yml = .github\workflows\codeql-analysis.yml
FASTER_Version.xml = FASTER_Version.xml
+ global.json = global.json
NuGet.Config = NuGet.Config
.github\workflows\publish.yml = .github\workflows\publish.yml
README.md = README.md
diff --git a/global.json b/global.json
new file mode 100644
index 0000000..20c2667
--- /dev/null
+++ b/global.json
@@ -0,0 +1,6 @@
+{
+ "sdk": {
+ "rollForward": "latestFeature",
+ "version": "9.0.0"
+ }
+}
\ No newline at end of file
From 6cbd8af42d0b4033ba918984ae13e887728d0911 Mon Sep 17 00:00:00 2001
From: Keelah Atom
Date: Wed, 16 Jul 2025 15:27:09 +0200
Subject: [PATCH 5/7] Configures CodeQL analysis workflow
Sets up a CodeQL analysis workflow to automatically analyze the codebase for potential security vulnerabilities and code quality issues.
The workflow is triggered on push to master, pull requests against master, and manual workflow dispatch.
It performs analysis using the 'csharp' language.
SonarCloud analysis is temporarily disabled and will be auto-analysing the project and the PRs.
---
.github/workflows/codeql-analysis.yml | 132 +++++++++++++-------------
1 file changed, 67 insertions(+), 65 deletions(-)
diff --git a/.github/workflows/codeql-analysis.yml b/.github/workflows/codeql-analysis.yml
index 15f8dae..612e270 100644
--- a/.github/workflows/codeql-analysis.yml
+++ b/.github/workflows/codeql-analysis.yml
@@ -13,7 +13,8 @@ on:
jobs:
analyzeQL:
name: Analyze with CodeQL
- runs-on: [ubuntu-latest] # may cause Out of Memory errors
+ environment: Dev
+ runs-on: [windows-latest]
# runs-on: [self-hosted]
permissions:
@@ -56,73 +57,74 @@ jobs:
- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v3
- AnalysisSonar:
- name: Analyze with SonarCloud
- runs-on: windows-latest
- permissions:
- pull-requests: write # allows SonarCloud to decorate PRs with analysis results
-
- # steps: # DOES NOT SCAN FOR SOME REASON ?
- # - name: Analyze with SonarCloud
-
- # # You can pin the exact commit or the version.
- # uses: SonarSource/sonarcloud-github-action@v3
- # env:
- # SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
- # with:
- # # Additional arguments for the SonarScanner CLI
- # args:
- # -Dsonar.projectKey=Foxlider_FASTER
- # -Dsonar.organization=foxlicorp
- # projectBaseDir: .
-
-
- steps:
- - name: Set up JDK 17
- uses: actions/setup-java@v4
- with:
- java-version: 17
- distribution: 'zulu' # Alternative distribution options are available.
+ ## SONAR is now auto-analysing the project and the PRs
+ # AnalysisSonar:
+ # name: Analyze with SonarCloud
+ # runs-on: windows-latest
+ # permissions:
+ # pull-requests: write # allows SonarCloud to decorate PRs with analysis results
+
+ # # steps: # DOES NOT SCAN FOR SOME REASON ?
+ # # - name: Analyze with SonarCloud
+
+ # # # You can pin the exact commit or the version.
+ # # uses: SonarSource/sonarcloud-github-action@v3
+ # # env:
+ # # SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
+ # # with:
+ # # # Additional arguments for the SonarScanner CLI
+ # # args:
+ # # -Dsonar.projectKey=Foxlider_FASTER
+ # # -Dsonar.organization=foxlicorp
+ # # projectBaseDir: .
+
+
+ # steps:
+ # - name: Set up JDK 17
+ # uses: actions/setup-java@v4
+ # with:
+ # java-version: 17
+ # distribution: 'zulu' # Alternative distribution options are available.
- - uses: actions/checkout@v4
- with:
- submodules: true
- fetch-depth: 0 # Shallow clones should be disabled for a better relevancy of analysis
+ # - uses: actions/checkout@v4
+ # with:
+ # submodules: true
+ # fetch-depth: 0 # Shallow clones should be disabled for a better relevancy of analysis
- - name: Setup .NET Core SDK
- uses: actions/setup-dotnet@v4.0.0
- with:
- dotnet-version: ${{env.DOTNET_VERSION}}
-
- - name: Cache SonarCloud packages
- uses: actions/cache@v4
- with:
- path: ~\sonar\cache
- key: ${{ runner.os }}-sonar
- restore-keys: ${{ runner.os }}-sonar
+ # - name: Setup .NET Core SDK
+ # uses: actions/setup-dotnet@v4.0.0
+ # with:
+ # dotnet-version: ${{env.DOTNET_VERSION}}
+
+ # - name: Cache SonarCloud packages
+ # uses: actions/cache@v4
+ # with:
+ # path: ~\sonar\cache
+ # key: ${{ runner.os }}-sonar
+ # restore-keys: ${{ runner.os }}-sonar
- - name: Cache SonarCloud scanner
- id: cache-sonar-scanner
- uses: actions/cache@v4
- with:
- path: .\.sonar\scanner
- key: ${{ runner.os }}-sonar-scanner
- restore-keys: ${{ runner.os }}-sonar-scanner
+ # - name: Cache SonarCloud scanner
+ # id: cache-sonar-scanner
+ # uses: actions/cache@v4
+ # with:
+ # path: .\.sonar\scanner
+ # key: ${{ runner.os }}-sonar-scanner
+ # restore-keys: ${{ runner.os }}-sonar-scanner
- - name: Install SonarCloud scanner
- if: steps.cache-sonar-scanner.outputs.cache-hit != 'true'
- shell: pwsh
- run: |
- New-Item -Path .\.sonar\scanner -ItemType Directory
- dotnet tool update dotnet-sonarscanner --tool-path .\.sonar\scanner
+ # - name: Install SonarCloud scanner
+ # if: steps.cache-sonar-scanner.outputs.cache-hit != 'true'
+ # shell: pwsh
+ # run: |
+ # New-Item -Path .\.sonar\scanner -ItemType Directory
+ # dotnet tool update dotnet-sonarscanner --tool-path .\.sonar\scanner
- - name: Build and analyze
- env:
- GITHUB_TOKEN: ${{ secrets.PR_DECORATION }} # Needed to get PR information, if any
- SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
- shell: pwsh
- run: |
- .\.sonar\scanner\dotnet-sonarscanner begin /k:"Foxlider_FASTER" /o:"foxlicorp" /d:sonar.token="${{ secrets.SONAR_TOKEN }}" /d:sonar.host.url="https://sonarcloud.io"
- dotnet build
- .\.sonar\scanner\dotnet-sonarscanner end /d:sonar.token="${{ secrets.SONAR_TOKEN }}"
+ # - name: Build and analyze
+ # env:
+ # GITHUB_TOKEN: ${{ secrets.PR_DECORATION }} # Needed to get PR information, if any
+ # SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
+ # shell: pwsh
+ # run: |
+ # .\.sonar\scanner\dotnet-sonarscanner begin /k:"Foxlider_FASTER" /o:"foxlicorp" /d:sonar.token="${{ secrets.SONAR_TOKEN }}" /d:sonar.host.url="https://sonarcloud.io"
+ # dotnet build
+ # .\.sonar\scanner\dotnet-sonarscanner end /d:sonar.token="${{ secrets.SONAR_TOKEN }}"
\ No newline at end of file
From 46441b43b7d1a852c8fb76424894b27fc4492963 Mon Sep 17 00:00:00 2001
From: Keelah Atom
Date: Wed, 16 Jul 2025 15:39:41 +0200
Subject: [PATCH 6/7] Classic Imafuckingidiot commit
I messed up but is ok
---
.github/workflows/release.yml | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml
index 3e40642..3c7fa9f 100644
--- a/.github/workflows/release.yml
+++ b/.github/workflows/release.yml
@@ -44,13 +44,13 @@ jobs:
- name: Checkout
uses: actions/checkout@v4
with:
- submodules: false
+ submodules: true
# Install the .NET Core workload
- name: Install .NET Core
uses: actions/setup-dotnet@v4
with:
- dotnet-version: ${{vars.DOTNET_VERSION}}
+ dotnet-version: ${{env.DOTNET_VERSION}}
# Execute all unit tests in the solution
- name: Execute unit tests
@@ -93,7 +93,7 @@ jobs:
- name: Checkout
uses: actions/checkout@v4
with:
- submodules: false
+ submodules: true
fetch-depth: 0 # required for tags history processing
- name: Download x64 artifact
From 7bb70a2dae5955f8a395d37dd1febf41fddeca1a Mon Sep 17 00:00:00 2001
From: Keelah Atom
Date: Wed, 16 Jul 2025 16:34:11 +0200
Subject: [PATCH 7/7] Version Bump to 1.9g
---
FASTER/FASTER.csproj | 2 +-
FASTER_Version.xml | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/FASTER/FASTER.csproj b/FASTER/FASTER.csproj
index 56724af..c79a75a 100644
--- a/FASTER/FASTER.csproj
+++ b/FASTER/FASTER.csproj
@@ -11,7 +11,7 @@
True
FASTERKey.snk
Keelah Fox, Jupster, Canno.n
- 1.9.6.2
+ 1.9.7.1
FoxliCorp.
Fox's Arma Server Tool Extended Rewrite
Copyright © 2019
diff --git a/FASTER_Version.xml b/FASTER_Version.xml
index 32b755b..7fd63a9 100644
--- a/FASTER_Version.xml
+++ b/FASTER_Version.xml
@@ -1,6 +1,6 @@
-
- 1.9.6.2
+ 1.9.7.1
https://github.com/Foxlider/FASTER/releases/latest/download/Release_x64.zip
https://github.com/Foxlider/FASTER/releases
true