NET 8 Upgrade (#687)

* Initial .NET8 Upgrade

* Initial GitHub Actions Cleanup

* Fix Desktop Notifications

* Fix throw warning

* Upgrade vunerable transative nuget packages

* Fix warnings with registry overflow

* Adjust async/await usage for configRepository

* Fix TTS voice name and app auto start

* Install .NET 8 with setup

I regret NSIS

* Remove no longer needed System/MS references (included in dotnet sdk)

* Surpress stackalloc in loop warning, that code scares me.

* Removed unused SharpDX packages

* Ignore WebClient warning, hopefully this project doesn't move past NET 8

* Fixed terrifying code

* GenerateAssemblyInfo

* Trimmed editor config to only silence warning.

* Fix open webpage

* Fix updater

---------

Co-authored-by: DubyaDude <ushafiq141@gmail.com>
Co-authored-by: Natsumi <cmcooper123@hotmail.com>
This commit is contained in:
Ethan Cordray
2023-11-21 07:41:57 -05:00
committed by GitHub
parent 7bb5c8ea45
commit 2e9db3153d
26 changed files with 796 additions and 736 deletions

View File

@@ -1,51 +1,61 @@
name: VRCX
on:
- workflow_dispatch
- push
- pull_request
jobs:
build_dotnet:
runs-on: windows-latest
steps:
- uses: actions/checkout@v3
- name: Setup Nuget.exe
uses: nuget/setup-nuget@v1
- name: Restore packages
run: nuget restore VRCX.sln
- name: Setup MSBuild.exe
uses: microsoft/setup-msbuild@v1.1
- name: Build with MSBuild
run: msbuild VRCX.sln -p:Configuration=Release -p:Platform=x64
- uses: actions/upload-artifact@v3
with:
name: vrcx
path: bin/x64/Release
build_node:
build_vrcx_win:
runs-on: ubuntu-latest
defaults:
run:
working-directory: html
steps:
- uses: actions/checkout@v3
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v3
- name: Setup .NET 8
uses: actions/setup-dotnet@v3
with:
node-version: ${{ matrix.node-version }}
- name: Restore dependencies
run: npm ci
- name: Lint
run: npm run lint
- name: Build
run: npm run production
- name: Fix folder structure
id: fix-folders
run: |
mkdir upload
mv dist upload/html
- uses: actions/upload-artifact@v3
dotnet-version: '8.0.x'
- name: Setup NodeJS 18
uses: actions/setup-node@v4
with:
name: vrcx
path: html/upload
node-version: 18
- name: Setup NSIS
run: sudo apt update && sudo apt install -y nsis nsis-pluginapi
- name: Restore Node Dependencies
run: cd ${{ github.workspace }}/html && npm ci && cd ${{ github.workspace }}
#- name: JS Lint
# run: cd html && npm run lint && cd ..
- name: Build Web UI
run: cd ${{ github.workspace }}/html && npm run production && cd ${{ github.workspace }}
- name: Build .NET Application
run: dotnet build -p:Configuration=Release -p:Platform=x64 -p:EnableWindowsTargeting=true
- name: Copy Web UI
run: cp -r ${{ github.workspace }}/html/dist ${{ github.workspace }}/bin/x64/Release/html
- name: Fix NSIS Permissions
run: sudo chown -R $(whoami) /usr/share/nsis/Plugins/
- name: Build Installer
uses: joncloud/makensis-action@v4
with:
script-file: ${{ github.workspace }}/Installer/installer.nsi
additional-plugin-paths: ${{ github.workspace }}/Installer/Plugins
- name: Upload Zip
uses: actions/upload-artifact@v3
with:
name: "VRCX"
path: ${{ github.workspace }}/bin/x64/Release/*
- name: Upload Installer
uses: actions/upload-artifact@v3
with:
name: "VRCX_Setup"
path: ${{ github.workspace }}/Installer/VRCX_Setup.exe