diff --git a/.github/workflows/codeql-analysis-dotnet-8.yml b/.github/workflows/codeql-analysis-dotnet-8.yml new file mode 100644 index 0000000..130a866 --- /dev/null +++ b/.github/workflows/codeql-analysis-dotnet-8.yml @@ -0,0 +1,67 @@ +## original file was auto generated +## but was then customised for this specific project +## + +name: "pipeline dot net 8.x" + +on: + push: + branches: [ master.move-to-dotnet-8 ] + schedule: + # Run at 07:37 AM, every Friday + - cron: '37 7 * * 5' + +jobs: + analyze: + name: Analyze + + ## Environment variable + #env: + # HELLO: 'WORLD' + + permissions: + actions: read + contents: read + security-events: write + + ## For a list of available runner types, refer to + ## https://help.github.com/en/actions/reference/workflow-syntax-for-github-actions#jobsjob_idruns-on + ## TLDR choice of ubuntu-latest, windows-latest, and macos-latest + runs-on: windows-latest + + strategy: + fail-fast: true + matrix: + language: [ 'csharp' ] + + steps: + + - name: Checkout repository + uses: actions/checkout@v4 + + + # Install the .NET Core workload + - name: Install .NET Core + uses: actions/setup-dotnet@v4 + with: + dotnet-version: 8.0.x + + + # Add MSBuild to the PATH: https://github.com/microsoft/setup-msbuild + - name: Setup MSBuild.exe + uses: microsoft/setup-msbuild@v2 + + + - name: Initialize CodeQL tools for scanning. + uses: github/codeql-action/init@v4 + with: + languages: ${{ matrix.language }} + + + - name: Run ./build.ps1 + run: | + powershell ./build.ps1 -execTest FALSE -execGenerateArtefact FALSE + + + - name: Perform CodeQL Analysis + uses: github/codeql-action/analyze@v4 diff --git a/.github/workflows/codeql-analysis.yml b/.github/workflows/codeql-analysis-dotnet-framework-4.yml similarity index 85% rename from .github/workflows/codeql-analysis.yml rename to .github/workflows/codeql-analysis-dotnet-framework-4.yml index c4276ef..c5caae7 100644 --- a/.github/workflows/codeql-analysis.yml +++ b/.github/workflows/codeql-analysis-dotnet-framework-4.yml @@ -2,14 +2,11 @@ ## but was then customised for this specific project ## -name: "CodeQL" +name: "pipeline dot net framework 4.x" on: push: - branches: [ master, develop-pancakeslp ] - pull_request: - # The branches below must be a subset of the branches above - branches: [ master, develop-pancakeslp ] + branches: [ master, master.dependencies-2026-attempt2 ] schedule: # Run at 07:37 AM, every Friday - cron: '37 7 * * 5' @@ -62,7 +59,7 @@ jobs: - name: Initialize CodeQL tools for scanning. - uses: github/codeql-action/init@v3 + uses: github/codeql-action/init@v4 with: languages: ${{ matrix.language }} @@ -73,4 +70,4 @@ jobs: - name: Perform CodeQL Analysis - uses: github/codeql-action/analyze@v3 + uses: github/codeql-action/analyze@v4 diff --git a/build.ps1 b/build.ps1 index 857ac0f..5f610c2 100644 --- a/build.ps1 +++ b/build.ps1 @@ -31,6 +31,17 @@ echo "" ## exit on first error $ErrorActionPreference = "Stop" +################################ +################################ + +## print env variables - before we manip +echo "print ENV (1/2)" +dir env: +echo "" + +################################ +################################ + ## at top as you must define a function before calling it function error-if-path-does-not-exist { @@ -51,7 +62,7 @@ $CERT_DIRECTORY = "E:\workspace\##certificates\github.com-pancakeslp\" #$MS_BUILD_CONFIG = "Debug" $MS_BUILD_CONFIG = "Release" -$VERSION = "3.1.2" +$VERSION = "3.1.3" ################################ ################################ @@ -66,6 +77,16 @@ $env:Path += ";C:\Program Files (x86)\Windows Kits\10\bin\10.0.19041.0\x64\" ## Path for vstest.console.exe $env:Path += ";$VISUAL_STUDIO_PATH\Common7\IDE\CommonExtensions\Microsoft\TestWindow" + +################################ +################################ + +if ( -Not $env:CI ) { + error-if-path-does-not-exist $CERT_DIRECTORY + + error-if-path-does-not-exist $VISUAL_STUDIO_PATH +} + ################################ ################################ @@ -91,6 +112,14 @@ $NUGET_PACKAGE_PATH="${env:USERPROFILE}\.nuget\packages\" ################################ ################################ +## print env variables - after manipulating +echo "print ENV (2/2)" +dir env: +echo "" + +################################ +################################ + function add-build-date { make-dir $PROJECT_DIRECTORY_PS4_KEYBOARD_AND_MOUSE_ADAPTER\Resources\ @@ -102,7 +131,7 @@ function add-build-date { function build-msbuild { - echo "msbuild-ing" + echo "@@@ msbuild-ing" ## "-p:UseSharedCompilation=false" for CodeQL MSBuild.exe PS4KeyboardAndMouseAdapter.sln ` @@ -120,7 +149,7 @@ function build-msbuild { ## wait to make sure nothing errors Start-Sleep -Milliseconds 500 - echo "msbuild done" + echo "@@@ msbuild done" } @@ -146,14 +175,19 @@ function cleanup-postbuild { } -function dependencies-nuget { - ## this was a nuget command when using packages.config - ## now we use dotnet for dependencies defined via "packageref" - dotnet restore - error-on-bad-return-code +function dependencies-install { + echo "@@@ dependencies-install-ing..." + dotnet restore + error-on-bad-return-code + + echo "@@@ dependencies-install-ed" } +## see top of file for this declaration +## function error-if-path-does-not-exist {} + + function error-on-bad-return-code { if ( $LASTEXITCODE -ne 0 ) { echo "error-on-bad-return-code!" @@ -165,31 +199,9 @@ function error-on-bad-return-code { ## see top of file ## function error-if-path-does-not-exist { +function generate-artefact-release { -function main_exec { - - add-build-date - - cleanup-prebuild - - dependencies-nuget - - validate-xaml-xmllint - - update-assembly-info - - build-msbuild - - - echo "" - if ( $execTest -eq "TRUE" ) { - test-vstest - } else { - echo "tests SKIPPED, because arg execTest was '$execTest'" - } - echo "" - - if ( $execGenerateArtefact -eq "TRUE" ) { + if ( $execGenerateArtefact -eq "TRUE" -And $MS_BUILD_CONFIG -eq "Release" ) { echo "artefact generation STARTED" @@ -202,25 +214,59 @@ function main_exec { echo "" + ## on branch (master.move-to-dotnet-8), we had this quirk + ## if you run `make-installer-zip` then `make-installer-exe` zip size is about 18mb + ## if you run `make-installer-exe` then `make-installer-zip` zip size is about 70mb + ## extra size is because it will include nuget stuff + ## TODO check if this is an issue - if( $MS_BUILD_CONFIG -eq "Release" ) { + make-extract-me-installer - make-extract-me-installer + make-nuget-package - make-nuget-package + squirrel - squirrel + sign-installer - sign-installer - } echo "artefact generation FINISHED" } else { - echo "artefact generation SKIPPED, because arg execGenerateArtefact was '$execGenerateArtefact'" + echo "@@@ generate-artefact-release SKIPPED, because " + + if (-Not $execGenerateArtefact -eq "TRUE") { + echo "... arg execGenerateArtefact was '$execGenerateArtefact'" + } + + if (-Not $MS_BUILD_CONFIG -eq "Release") { + echo "... arg MS_BUILD_CONFIG was '$MS_BUILD_CONFIG'" + } } +} + +function main_exec { + + add-build-date + + cleanup-prebuild + + dependencies-install + + validate-xaml-xmllint + + update-assembly-info + + build-msbuild + + test-vstest + + generate-artefact-release + cleanup-postbuild + + echo "" + echo "@@@ build.ps1 SUCCESS!" } @@ -236,7 +282,7 @@ function make-dir { function make-extract-me-installer { echo "" - echo "making extract-me-installer" + echo "@@@ making extract-me-installer" $EXTRACTED_PATH="$GENERATED_INSTALLER_PATH\extract-temp\" @@ -255,13 +301,13 @@ function make-extract-me-installer { remove $EXTRACTED_PATH - echo "made extract-me-installer" + echo "@@@ made extract-me-installer" } function make-nuget-package { echo "" - echo "making nuget-package" + echo "@@@ making nuget-package" $FIND="REPLACE_VERSION_REPLACE" $REPLACE="$VERSION" @@ -276,7 +322,7 @@ function make-nuget-package { nuget pack $TARGET_NUSPEC_FILE error-on-bad-return-code - echo "made nuget-package" + echo "@@@ made nuget-package" } @@ -322,25 +368,26 @@ function remove { function sign-executables { echo "" - echo "sign-ing executables" + echo "@@@ sign-ing executables" manually-sign-file "$PROJECT_DIRECTORY_PS4_KEYBOARD_AND_MOUSE_ADAPTER\bin\$MS_BUILD_CONFIG\PS4KeyboardAndMouseAdapter.exe" - echo "signed executables" + echo "@@@ signed executables" } function sign-installer { echo "" - echo "sign-ing installer" + echo "@@@ sign-ing installer" manually-sign-file $GENERATED_INSTALLER_PATH\application-setup.exe - echo "signed installer" + echo "@@@ signed installer" } +## TODO we traded squirrel for velopack function squirrel { echo "" - echo "squirrel-ing package ..." + echo "@@@ squirrel-ing package ..." ##TODO do this for EVERY path error-if-path-does-not-exist $NUGET_PACKAGE_PATH @@ -359,29 +406,36 @@ function squirrel { ## move setup.exe as we have two setup files (one a exe one a zip) Move-Item -Path $GENERATED_INSTALLER_PATH\setup.exe -Destination $GENERATED_INSTALLER_PATH\application-setup.exe - echo "squirrel-ed package!" + echo "@@@ squirrel-ed package!" } function test-vstest { - echo "vstest-ing" - $UNIT_TEST_DLL="$PROJECT_DIRECTORY_UNIT_TESTS\bin\$MS_BUILD_CONFIG\UnitTests.dll" + if (!($execTest -eq "TRUE")) { + echo "@@@ test-vstest SKIPPED, because arg execTest was '$execTest'" + return + } - if (!(Test-Path $UNIT_TEST_DLL )) { - echo "UnitTests.dll missing! ... path $UNIT_TEST_DLL" - exit 1 - } + echo "@@@ vstest-ing" + $UNIT_TEST_DLL = "$PROJECT_DIRECTORY_UNIT_TESTS\bin\$MS_BUILD_CONFIG\UnitTests.dll" - vstest.console.exe $UNIT_TEST_DLL --ListTests - echo "" + if (!(Test-Path $UNIT_TEST_DLL)) + { + echo "UnitTests.dll missing! ... path $UNIT_TEST_DLL" + exit 1 + } - vstest.console.exe $UNIT_TEST_DLL + vstest.console.exe $UNIT_TEST_DLL --ListTests + echo "" - if ( $LASTEXITCODE -ne 0) { - echo "vstest failed" - exit $LASTEXITCODE - } + vstest.console.exe $UNIT_TEST_DLL + + if ($LASTEXITCODE -ne 0) + { + echo "vstest failed" + exit $LASTEXITCODE + } @@ -391,7 +445,7 @@ function test-vstest { ## exit $LASTEXITCODE ##} - echo "vstest done" + echo "@@@ vstest done" } @@ -415,12 +469,14 @@ function validate-xaml-xmllint { ## if you dont know chocolatey, then see https://chocolatey.org/ echo "" - echo "validating xamls xmllint" + echo "@@@ validating xamls xmllint" $files = Get-ChildItem -recurse *.xaml | where {! $_.PSIsContainer} foreach ($file in $files) { + ## if you dont know xmllint, + ## then see https://gnome.pages.gitlab.gnome.org/libxml2/xmllint.html xmllint.exe $file.FullName --noout ## if you get a negative exit coder assume the binary is either corrupted or missing DLLs @@ -431,7 +487,7 @@ function validate-xaml-xmllint { } - echo "validated xamls xmllint" + echo "@@@ validated xamls xmllint" } diff --git a/code/Common/Common.csproj b/code/Common/Common.csproj index 2b544a9..1895309 100644 --- a/code/Common/Common.csproj +++ b/code/Common/Common.csproj @@ -9,11 +9,18 @@ Properties Pizza.Common PS4KMA-Common - v4.6.1 + v4.8 win 512 true + + + NU1605 true diff --git a/code/PS4KeyboardAndMouseAdapter/App.xaml.cs b/code/PS4KeyboardAndMouseAdapter/App.xaml.cs index c2ac701..a1f6aa8 100644 --- a/code/PS4KeyboardAndMouseAdapter/App.xaml.cs +++ b/code/PS4KeyboardAndMouseAdapter/App.xaml.cs @@ -5,6 +5,7 @@ using Serilog; using System; using System.Windows; +using Velopack; namespace Pizza.KeyboardAndMouseAdapter { @@ -23,12 +24,14 @@ private void OnAppExit(object sender, ExitEventArgs e) ApplicationSettings.Save(); VigemManager.Stop(InstanceSettings.GetInstance()); - - //TODO: hardcoded, fix. - //Injector.FindProcess("RemotePlay").Kill(); } private async void OnAppStartup(object sender, StartupEventArgs e) + { + AppStart(); + } + + private void AppStart() { LogManager logManager = new LogManager(); logManager.SetupLogger(); @@ -45,9 +48,31 @@ private async void OnAppStartup(object sender, StartupEventArgs e) UserSettings.LoadPrevious(); AppUpdater appUpdater = new AppUpdater(); - - await appUpdater.UpdateIfAvailable(); + appUpdater.UpdateIfAvailable(); } + // Since WPF has an "automatic" Program.Main, we need to create one Velopack. + // In order for this to work, you must also add the following to your .csproj: + // Pizza.KeyboardAndMouseAdapter.App + [STAThread] + private static void Main(string[] args) + { + try { + // Velopack says it is important to Run() the VelopackApp as early as possible in app startup. + VelopackApp.Build().Run(); + + // We can now launch the WPF application as normal. + var app = new App(); + app.InitializeComponent(); + + + + app.Run(); + app.AppStart(); + + } catch (Exception ex) { + MessageBox.Show("Unhandled exception: " + ex.ToString()); + } + } } } diff --git a/code/PS4KeyboardAndMouseAdapter/Backend/AppUpdater.cs b/code/PS4KeyboardAndMouseAdapter/Backend/AppUpdater.cs index 82880e4..ce629bd 100644 --- a/code/PS4KeyboardAndMouseAdapter/Backend/AppUpdater.cs +++ b/code/PS4KeyboardAndMouseAdapter/Backend/AppUpdater.cs @@ -1,66 +1,71 @@ -using NuGet; +using NuGet.Versioning; using Pizza.Common; using Serilog; -using Squirrel; using System; using System.Collections.Generic; using System.IO; +using System.Text; using System.Threading.Tasks; +using System.Windows; +using Velopack; +using Velopack.Logging; namespace Pizza.KeyboardAndMouseAdapter.Backend { + //TODO tidy up this class class AppUpdater { - private bool IsNewerVersionAvailable(List releaseEntries) - { - SemanticVersion currentVersion = VersionUtil.GetSemanticVersion(); - Log.Information("AppUpdater.UpdateIfAvailable() current version " + currentVersion.Version.ToString()); - - bool newerVersion = false; - foreach (ReleaseEntry releaseEntry in releaseEntries) - { - SemanticVersion newVersion = releaseEntry.Version; - Log.Information("AppUpdater.UpdateIfAvailable() 'new' version found: " + newVersion.Version.ToString()); - - if (newVersion > currentVersion) - { - newerVersion = true; - Log.Information("AppUpdater.UpdateIfAvailable() newer version found"); - } - } - - return newerVersion; - } - - private void PrintCurrentlyInstalledNugetVersion(UpdateManager mgr) - { - try - { - SemanticVersion nugetCurrentVersion = mgr.CurrentlyInstalledVersion(); - if (nugetCurrentVersion != null) - { - Log.Information("AppUpdater.printCurrentlyInstalledNugetVersion() " + nugetCurrentVersion.Version.ToString()); - } - else - { - Log.Information("AppUpdater.printCurrentlyInstalledNugetVersion() null"); - } - } - catch (Exception ex) - { - ExceptionLogger.LogException("AppUpdater.RemoveNewShortcuts Shortcut deletion failed", ex); - } - } +// private bool IsNewerVersionAvailable(List releaseEntries) +// { +// SemanticVersion currentVersion = VersionUtil.GetSemanticVersion(); +// Log.Information("AppUpdater.UpdateIfAvailable() current version " + currentVersion.Version.ToString()); +// +// bool newerVersion = false; +// foreach (ReleaseEntry releaseEntry in releaseEntries) +// { +// SemanticVersion newVersion = releaseEntry.Version; +// Log.Information("AppUpdater.UpdateIfAvailable() 'new' version found: " + newVersion.Version.ToString()); +// +// if (newVersion > currentVersion) +// { +// newerVersion = true; +// Log.Information("AppUpdater.UpdateIfAvailable() newer version found"); +// } +// } +// +// return newerVersion; +// } +// +// private void PrintCurrentlyInstalledNugetVersion(UpdateManager mgr) +// { +// try +// { +// SemanticVersion nugetCurrentVersion = mgr.CurrentlyInstalledVersion(); +// if (nugetCurrentVersion != null) +// { +// Log.Information("AppUpdater.printCurrentlyInstalledNugetVersion() " + nugetCurrentVersion.Version.ToString()); +// } +// else +// { +// Log.Information("AppUpdater.printCurrentlyInstalledNugetVersion() null"); +// } +// } +// catch (Exception ex) +// { +// ExceptionLogger.LogException("AppUpdater.RemoveNewShortcuts Shortcut deletion failed", ex); +// } +// } private void RemoveNewShortcuts() { try { string desktopPath = Environment.GetFolderPath(Environment.SpecialFolder.Desktop); - File.Delete(Path.Combine(desktopPath, "EasyHookSvc.lnk")); - File.Delete(Path.Combine(desktopPath, "EasyHookSvc64.lnk")); - File.Delete(Path.Combine(desktopPath, "EasyHookSvc32.lnk")); + //TODO does Velopack still do this ? +// File.Delete(Path.Combine(desktopPath, "EasyHookSvc.lnk")); +// File.Delete(Path.Combine(desktopPath, "EasyHookSvc64.lnk")); +// File.Delete(Path.Combine(desktopPath, "EasyHookSvc32.lnk")); } catch (Exception ex) { @@ -71,35 +76,68 @@ private void RemoveNewShortcuts() // Log notes // logically we want Log.Debug, however this happens prior to the log level being set, // So we are using Log.Information so we dont lose information - public async Task UpdateIfAvailable() + public void UpdateIfAvailable() { Log.Information("AppUpdater.UpdateIfAvailable() start"); try { + UpdateInfo updateInfo; + UpdateManager updateManager = new UpdateManager("https://github.com/starshinata/PS4-Keyboard-and-Mouse-Adapter"); + + try + { + Log.Information("AppUpdater.UpdateIfAvailable() trying updateManager.CheckForUpdates()"); + updateInfo = updateManager.CheckForUpdates(); + } + catch (Exception e) + { + ExceptionLogger.LogException("Velopack check for update error", e); + return; + } + + if (updateInfo == null || updateInfo.TargetFullRelease == null || updateInfo.TargetFullRelease.Version == null) { + Log.Information("AppUpdater.UpdateIfAvailable() updateInfo null, thus no update"); + } + Log.Information("updateInfo.ToString(); " + updateInfo.ToString()); - Log.Information("AppUpdater.UpdateIfAvailable() trying GitHubUpdateManager"); - using (UpdateManager mgr = await UpdateManager.GitHubUpdateManager("https://github.com/starshinata/PS4-Keyboard-and-Mouse-Adapter")) + if (updateInfo.TargetFullRelease.Version > updateManager.CurrentVersion) { - Log.Information("AppUpdater.UpdateIfAvailable() update check"); - UpdateInfo updateResult = await mgr.CheckForUpdate(); - Log.Information("AppUpdater.UpdateIfAvailable() update check returned"); - - PrintCurrentlyInstalledNugetVersion(mgr); - - bool newerVersion = IsNewerVersionAvailable(updateResult.ReleasesToApply); - - if (newerVersion) - { - Log.Information("AppUpdater.UpdateIfAvailable() trying UpdateApp"); - await mgr.UpdateApp(); - RemoveNewShortcuts(); - Log.Information("AppUpdater.UpdateIfAvailable() UpdateApp complete"); - } - else - { - Log.Information("AppUpdater.UpdateIfAvailable() updates skipped"); - } + Log.Information("updateInfo NEWER"); + + Log.Information("NOTE: update will be triggered on clean exit of this application!"); + + // "wait for exit" + // so update when the user is done + bool silent = true; + bool restart = false; + updateManager.WaitExitThenApplyUpdates(updateInfo.TargetFullRelease, silent, restart); + } + else { + Log.Information("updateInfo OLDER"); } + + + //{ + // Log.Information("AppUpdater.UpdateIfAvailable() update check"); + // UpdateInfo updateResult = await mgr.CheckForUpdate(); + // Log.Information("AppUpdater.UpdateIfAvailable() update check returned"); + + // PrintCurrentlyInstalledNugetVersion(mgr); + + // bool newerVersion = IsNewerVersionAvailable(updateResult.ReleasesToApply); + + // if (newerVersion) + // { + // Log.Information("AppUpdater.UpdateIfAvailable() trying UpdateApp"); + // await mgr.UpdateApp(); + // RemoveNewShortcuts(); + // Log.Information("AppUpdater.UpdateIfAvailable() UpdateApp complete"); + // } + // else + // { + // Log.Information("AppUpdater.UpdateIfAvailable() updates skipped"); + // } + //} } catch (Exception ex) { @@ -108,5 +146,41 @@ public async Task UpdateIfAvailable() Log.Information("AppUpdater.UpdateIfAvailable() update check completed"); } + //private void CheckForUpdate(UpdateManager _um) + //{ + + + + + //} + //private void UpdateStatus(UpdateManager _um) + //{ + // StringBuilder sb = new StringBuilder(); + // sb.AppendLine($"Velopack version: {VelopackRuntimeInfo.VelopackNugetVersion}"); + // sb.AppendLine($"This app version: {(_um.IsInstalled ? _um.CurrentVersion : "(n/a - not installed)")}"); + + // if (_update != null) + // { + // sb.AppendLine($"Update available: {_update.TargetFullRelease.Version}"); + // BtnDownloadUpdate.IsEnabled = true; + // } + // else + // { + // BtnDownloadUpdate.IsEnabled = false; + // } + + // if (_um.UpdatePendingRestart != null) + // { + // sb.AppendLine("Update ready, pending restart to install"); + // BtnRestartApply.IsEnabled = true; + // } + // else + // { + // BtnRestartApply.IsEnabled = false; + // } + + // TextStatus.Text = sb.ToString(); + // BtnCheckUpdate.IsEnabled = true; + //} } } diff --git a/code/PS4KeyboardAndMouseAdapter/Backend/VersionUtil.cs b/code/PS4KeyboardAndMouseAdapter/Backend/VersionUtil.cs index 549ebb8..0cc0d8c 100644 --- a/code/PS4KeyboardAndMouseAdapter/Backend/VersionUtil.cs +++ b/code/PS4KeyboardAndMouseAdapter/Backend/VersionUtil.cs @@ -1,4 +1,5 @@ -using NuGet; +using NuGet.Versioning; +using Serilog; using System; using System.Reflection; @@ -15,7 +16,10 @@ public static string GetVersion() public static SemanticVersion GetSemanticVersion() { Version v = Assembly.GetExecutingAssembly().GetName().Version; - return new SemanticVersion(v.Major, v.Minor, v.Build, v.Revision); + SemanticVersion version = new SemanticVersion(v.Major, v.Minor, v.Build); + //TODO what does this print ?! + Log.Information("version" + version); + return version; } public static string GetVersionWithBuildDate() diff --git a/code/PS4KeyboardAndMouseAdapter/PS4KeyboardAndMouseAdapter.csproj b/code/PS4KeyboardAndMouseAdapter/PS4KeyboardAndMouseAdapter.csproj index 9860255..d007262 100644 --- a/code/PS4KeyboardAndMouseAdapter/PS4KeyboardAndMouseAdapter.csproj +++ b/code/PS4KeyboardAndMouseAdapter/PS4KeyboardAndMouseAdapter.csproj @@ -8,7 +8,7 @@ WinExe Pizza.KeyboardAndMouseAdapter PS4KeyboardAndMouseAdapter - v4.6.1 + v4.8 win 512 {60dc8134-eba5-43b8-bcc9-bb4bc16c2548};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC} @@ -35,6 +35,9 @@ true true + + Pizza.KeyboardAndMouseAdapter.App + AnyCPU true @@ -44,6 +47,13 @@ DEBUG;TRACE prompt 4 + + + NU1605 AnyCPU @@ -105,40 +115,33 @@ + + + + + + + - - C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.6.1\System.Xml.dll - - - - - - + - 4.0 + 4.0 + - - C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.6.1\WindowsBase.dll - - - C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.6.1\PresentationCore.dll - - - C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.6.1\PresentationFramework.dll - True - + + MSBuild:Compile @@ -437,10 +440,10 @@ - 1.14.0 + 1.17.1 - 1.14.0 + 1.17.1 PreserveNewest @@ -452,13 +455,13 @@ 1.1.0 - 3.8.1 + 5.0.0 - 3.0.0 + 5.0.0 - 3.0.0 + 5.0.0 0.9.6.4 @@ -470,7 +473,7 @@ 1.17.178 - 13.0.1 + 13.0.3 2.9.0 @@ -496,30 +499,20 @@ 2.5.0 - - 0.17.1 - 1.5.0 1.6.2 - - 1.9.1 - - - 4.7.0 - 4.3.0 4.3.0 - - 4.4.0 - + + 1.4.0 @@ -557,5 +550,10 @@ false + + + + + \ No newline at end of file diff --git a/code/PS4KeyboardAndMouseAdapter/Properties/AssemblyInfo.cs b/code/PS4KeyboardAndMouseAdapter/Properties/AssemblyInfo.cs index c02f3fb..5fd2983 100644 --- a/code/PS4KeyboardAndMouseAdapter/Properties/AssemblyInfo.cs +++ b/code/PS4KeyboardAndMouseAdapter/Properties/AssemblyInfo.cs @@ -48,5 +48,5 @@ // // assume the below values are GENERATED // see build.ps1 for version management -[assembly: AssemblyVersion("3.1.2")] -[assembly: AssemblyFileVersion("3.1.2")] +[assembly: AssemblyVersion("3.1.3")] +[assembly: AssemblyFileVersion("3.1.3")] diff --git a/code/PS4RemotePlayInjection/PS4RemotePlayInjection.csproj b/code/PS4RemotePlayInjection/PS4RemotePlayInjection.csproj index afb08a9..59f2763 100644 --- a/code/PS4RemotePlayInjection/PS4RemotePlayInjection.csproj +++ b/code/PS4RemotePlayInjection/PS4RemotePlayInjection.csproj @@ -9,11 +9,18 @@ Properties PS4RemotePlayInjection PS4RemotePlayInjection - v4.6.1 + v4.8 win 512 true + + + NU1605 true diff --git a/code/TestTools/TestTools.csproj b/code/TestTools/TestTools.csproj index 31b8a7b..836c7b3 100644 --- a/code/TestTools/TestTools.csproj +++ b/code/TestTools/TestTools.csproj @@ -9,10 +9,17 @@ Properties TestTools TestTools - v4.6.1 - win + v4.8 + win 512 true + + + NU1605 true @@ -52,15 +59,17 @@ - - 2.2.5 - - - 6.5.1 + 8.8.0 - 6.1.0 + 8.0.0 + + + 2.2.5 + + + 13.0.3 diff --git a/code/UnitTests/UnitTests.csproj b/code/UnitTests/UnitTests.csproj index a77e7b8..eee8452 100644 --- a/code/UnitTests/UnitTests.csproj +++ b/code/UnitTests/UnitTests.csproj @@ -9,7 +9,7 @@ Properties UnitTests UnitTests - v4.6.1 + v4.8 win 512 {3AC096D0-A1C2-E12C-1390-A8335801FDAB};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC} @@ -20,6 +20,13 @@ UnitTest + + + NU1605 true @@ -43,10 +50,19 @@ + + + + + + + + + @@ -106,22 +122,19 @@ 6.3.0 - 6.1.0 + 6.1.0 - 4.4.0 + 5.2.1 - 6.5.1 + 8.8.0 - 6.1.0 - - - 1.1.0 + 8.0.0 - 4.16.1 + 4.18.4 2.2.5 @@ -130,35 +143,10 @@ 2.2.5 - 13.0.1 - - - 4.5.1 - - - 4.1.0 - - - 4.1.0 - - - 4.7.1 - - - 4.5.4 - - - 4.5.0 - - - 4.5.3 - - - 4.5.4 - - - 4.4.0 + 13.0.3 + +