Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
49 commits
Select commit Hold shift + click to select a range
6c0111f
Test on .NET v10
lil-jon-crunk Apr 15, 2026
df68e05
Android MiniAudioEngine done but soundflow is bugged...
SineVector241 Apr 17, 2026
66a99da
Merge branch 'dev' into feat/net-10
lil-jon-crunk Apr 17, 2026
3434a2e
Update to not-local package Message.Avalonia
lil-jon-crunk Apr 17, 2026
91a801c
fix: migrate mobile init for Avalonia 12 and respect iOS period frame
lil-jon-crunk Apr 17, 2026
0dba509
fix(android): migrate Avalonia 12 startup
lil-jon-crunk Apr 17, 2026
4d7059b
Fix things, standardize some warnings, BackPressed doesn't work fsr.
SineVector241 Apr 18, 2026
e1cc09d
feat(client): add input capture preset setting, move PTT i18n keys to…
lil-jon-crunk Apr 18, 2026
9e0604b
Drop support for 32-bit android
lil-jon-crunk Apr 18, 2026
572a87a
Change InputPreset to HardwarePreprocessorsEnabled and cleanup/upgrad…
SineVector241 Apr 19, 2026
5c1ac49
Update locales and try/catch native android engine.
SineVector241 Apr 19, 2026
7c7a8ea
Fix some warnings in tests and other things...
SineVector241 Apr 19, 2026
c66cac9
Fix a test and make android status bar match the theme when horizontal.
SineVector241 Apr 19, 2026
dba334b
Error out if audio player and recorder fail.
SineVector241 Apr 19, 2026
2976b3c
Race Condition, Can't fix it on android AAudio side fsr...
SineVector241 Apr 19, 2026
e852459
I hope this works...
SineVector241 Apr 19, 2026
3cc3ef9
Try to fix Pixel bug & revert build
lil-jon-crunk Apr 19, 2026
49e36ee
Fix typo & update deps
lil-jon-crunk Apr 19, 2026
0f5a28f
Fix build
lil-jon-crunk Apr 19, 2026
14353e9
Change McHttp to use direct packet framing.
SineVector241 Apr 20, 2026
5223d09
Remove some things and fix tests. Rename PacketFramer and fix McHttp …
SineVector241 Apr 20, 2026
edc1a5c
No more JSON exceptions.
SineVector241 Apr 20, 2026
a02cf89
Test new dump system & telemetry
lil-jon-crunk Apr 20, 2026
2930afc
Let users disable telemetry
lil-jon-crunk Apr 20, 2026
89570f2
Changes to telemetry
lil-jon-crunk Apr 21, 2026
a114aa9
Fix bug with getting OS info
lil-jon-crunk Apr 21, 2026
077e6f5
Fixed and improved telemetry reporting.
SineVector241 Apr 21, 2026
26f1eeb
Move telemetry transport to an instance based approach.
SineVector241 Apr 21, 2026
8bab9fe
Improve UI for modal and crashlogs.
SineVector241 Apr 21, 2026
a8cf0eb
Improve modals to use the new modal system.
SineVector241 Apr 21, 2026
13d1664
Fix some locales with hotkeys.
SineVector241 Apr 21, 2026
80965aa
Make some final changes.
SineVector241 Apr 21, 2026
fa47fcc
How the fuck did I miss this...
SineVector241 Apr 21, 2026
8f774ba
Use Z85 Again. Rework McApi side for McWss and McHttp.
SineVector241 Apr 22, 2026
7a99b7b
Made some memory management changes.
SineVector241 Apr 23, 2026
bc2581d
Change naming of McWss to match byte comparisons instead of string le…
SineVector241 Apr 23, 2026
54fe693
Fixed an incorrect parsing value with ProximityEffect.cs
SineVector241 Apr 23, 2026
198be9e
Fix McHttp using incorrect length variable.
SineVector241 Apr 23, 2026
68395e1
Localize some more dropdowns.
SineVector241 Apr 24, 2026
8f36557
fix: harden McApi transports and reduce server allocations
lil-jon-crunk Apr 26, 2026
9ffb360
feat: add AllocationRegression tests
lil-jon-crunk Apr 26, 2026
4ae0b4b
fix: SnapshotReadMaxBytesPerRead
lil-jon-crunk Apr 26, 2026
88f8069
fix: move http mcapi execution to update thread
lil-jon-crunk Apr 27, 2026
97147d6
Some Fixes.
SineVector241 Apr 27, 2026
b74ef8a
fix: harden mcapi server lifecycle and entity creation
lil-jon-crunk Apr 27, 2026
8d2fa90
Fix packet pooling bugs and improve audio effect system.
SineVector241 Apr 27, 2026
6abd82e
Merge remote-tracking branch 'lil-jon-crunk/feat/net-10' into fork/li…
SineVector241 Apr 27, 2026
9fcaa5d
fix: some typo
lil-jon-crunk Apr 27, 2026
bede59c
Some improvements.
SineVector241 Apr 27, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
93 changes: 48 additions & 45 deletions .github/workflows/build_and_draft.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ jobs:
- name: Setup Dotnet
uses: actions/setup-dotnet@v5
with:
dotnet-version: ${{ startsWith(matrix.os, 'macos') && '9.0.312' || '9.0.x' }}
dotnet-version: ${{ startsWith(matrix.os, 'macos') && '10.0.x' || '10.0.x' }}

- name: Restore Core Tests
run: dotnet restore ./VoiceCraft.Core.Tests/VoiceCraft.Core.Tests.csproj
Expand All @@ -38,7 +38,7 @@ jobs:
runs-on: windows-latest
strategy:
matrix:
arch: [ x64, x86, arm64 ]
arch: [x64, x86, arm64]
fail-fast: false
defaults:
run:
Expand All @@ -48,8 +48,8 @@ jobs:
- name: Setup Dotnet
uses: actions/setup-dotnet@v5
with:
dotnet-version: "9.0.x"
dotnet-version: "10.0.x"

- name: Install WorkLoads
run: dotnet workload restore

Expand All @@ -60,20 +60,20 @@ jobs:
shell: pwsh
run: |
$uri = "https://aka.ms/vc14/vc_redist.${{ matrix.arch }}.exe"
$outFile = "./bin/Release/net9.0-windows/win-${{ matrix.arch }}/publish/vc_redist.${{ matrix.arch }}.exe"
$outFile = "./bin/Release/net10.0-windows/win-${{ matrix.arch }}/publish/vc_redist.${{ matrix.arch }}.exe"
Invoke-WebRequest -Uri $uri -OutFile $outFile

- name: Upload Artifact
uses: actions/upload-artifact@v6
with:
name: VoiceCraft.Client.Windows.${{ matrix.arch }}
path: ./VoiceCraft.Client/VoiceCraft.Client.Windows/bin/Release/net9.0-windows/win-${{ matrix.arch }}/publish/
path: ./VoiceCraft.Client/VoiceCraft.Client.Windows/bin/Release/net10.0-windows/win-${{ matrix.arch }}/publish/

VoiceCraft-Client-Linux:
runs-on: ubuntu-latest
strategy:
matrix:
arch: [ x64, arm, arm64 ]
arch: [x64, arm, arm64]
fail-fast: false
defaults:
run:
Expand All @@ -83,7 +83,7 @@ jobs:
- name: Setup Dotnet
uses: actions/setup-dotnet@v5
with:
dotnet-version: "9.0.x"
dotnet-version: "10.0.x"

- name: Install WorkLoads
run: dotnet workload restore
Expand All @@ -95,13 +95,13 @@ jobs:
uses: actions/upload-artifact@v6
with:
name: VoiceCraft.Client.Linux.${{ matrix.arch }}
path: ./VoiceCraft.Client/VoiceCraft.Client.Linux/bin/Release/net9.0/linux-${{ matrix.arch }}/publish/
path: ./VoiceCraft.Client/VoiceCraft.Client.Linux/bin/Release/net10.0/linux-${{ matrix.arch }}/publish/

VoiceCraft-Client-Android:
runs-on: ubuntu-latest
strategy:
matrix:
arch: [ arm, arm64 ]
arch: [arm64]
fail-fast: false
defaults:
run:
Expand All @@ -111,11 +111,11 @@ jobs:
- name: Setup Dotnet
uses: actions/setup-dotnet@v5
with:
dotnet-version: "9.0.x"
dotnet-version: "10.0.x"

- name: Install WorkLoads
run: dotnet workload restore

- name: Setup Keystore File
run: echo -n "${{ secrets.ANDROID_KEYSTORE }}" | base64 --decode >> android.keystore

Expand All @@ -126,7 +126,7 @@ jobs:
uses: actions/upload-artifact@v6
with:
name: VoiceCraft.Client.Android.${{ matrix.arch }}
path: ./VoiceCraft.Client/VoiceCraft.Client.Android/bin/Release/net9.0-android/android-${{ matrix.arch }}/publish/com.AvionBlock.VoiceCraft.Client-Signed.apk
path: ./VoiceCraft.Client/VoiceCraft.Client.Android/bin/Release/net10.0-android/android-${{ matrix.arch }}/publish/*.apk

VoiceCraft-Client-iOS:
runs-on: macos-26
Expand All @@ -138,7 +138,7 @@ jobs:
- name: Setup Dotnet
uses: actions/setup-dotnet@v5
with:
dotnet-version: "9.0.312"
dotnet-version: "10.0.x"

- name: Install WorkLoads
run: dotnet workload restore
Expand All @@ -150,13 +150,13 @@ jobs:
uses: actions/upload-artifact@v6
with:
name: VoiceCraft.Client.iOS.arm64
path: ./VoiceCraft.Client/VoiceCraft.Client.iOS/bin/Release/net9.0-ios/ios-arm64/publish/*.ipa
path: ./VoiceCraft.Client/VoiceCraft.Client.iOS/bin/Release/net10.0-ios/ios-arm64/publish/*.ipa

VoiceCraft-Client-MacOS:
runs-on: macos-26
strategy:
matrix:
arch: [ x64, arm64 ]
arch: [x64, arm64]
fail-fast: false
defaults:
run:
Expand All @@ -166,20 +166,20 @@ jobs:
- name: Setup Dotnet
uses: actions/setup-dotnet@v5
with:
dotnet-version: "9.0.312"
dotnet-version: "10.0.x"

- name: Install WorkLoads
run: dotnet workload restore

- name: Restore ${{ matrix.arch }} Workloads
run: dotnet restore -r osx-${{ matrix.arch }}

- name: Publish Build
run: dotnet publish -c Release -r osx-${{ matrix.arch }} --no-restore -p:ValidateXcodeVersion=false

- name: Build VoiceCraft.Client.MacOS.${{ matrix.arch }}.dmg
run: |
cd ./bin/Release/net9.0-macos/osx-${{ matrix.arch }}
cd ./bin/Release/net10.0-macos/osx-${{ matrix.arch }}
APP_BUNDLE=$(find . -maxdepth 1 -name "*.app" -print -quit)
if [ -z "$APP_BUNDLE" ]; then
echo "No .app bundle found"
Expand All @@ -198,27 +198,27 @@ jobs:

- name: Normalize VoiceCraft.Client.MacOS.${{ matrix.arch }}.pkg name
run: |
cd ./bin/Release/net9.0-macos/osx-${{ matrix.arch }}
cd ./bin/Release/net10.0-macos/osx-${{ matrix.arch }}
PKG_PATH=$(ls ./publish/*.pkg | head -n 1)
cp "$PKG_PATH" "VoiceCraft.Client.MacOS.${{ matrix.arch }}.pkg"

- name: Upload Artifact
uses: actions/upload-artifact@v6
with:
name: VoiceCraft.Client.MacOS.${{ matrix.arch }}.dmg
path: ./VoiceCraft.Client/VoiceCraft.Client.MacOS/bin/Release/net9.0-macos/osx-${{ matrix.arch }}/VoiceCraft.Client.MacOS.${{ matrix.arch }}.dmg
path: ./VoiceCraft.Client/VoiceCraft.Client.MacOS/bin/Release/net10.0-macos/osx-${{ matrix.arch }}/VoiceCraft.Client.MacOS.${{ matrix.arch }}.dmg

- name: Upload Artifact
uses: actions/upload-artifact@v6
with:
name: VoiceCraft.Client.MacOS.${{ matrix.arch }}.pkg
path: ./VoiceCraft.Client/VoiceCraft.Client.MacOS/bin/Release/net9.0-macos/osx-${{ matrix.arch }}/VoiceCraft.Client.MacOS.${{ matrix.arch }}.pkg
path: ./VoiceCraft.Client/VoiceCraft.Client.MacOS/bin/Release/net10.0-macos/osx-${{ matrix.arch }}/VoiceCraft.Client.MacOS.${{ matrix.arch }}.pkg

VoiceCraft-Server-Windows:
runs-on: ubuntu-latest
strategy:
matrix:
arch: [ x64, x86, arm64 ]
arch: [x64, x86, arm64]
fail-fast: false
defaults:
run:
Expand All @@ -228,7 +228,7 @@ jobs:
- name: Setup Dotnet
uses: actions/setup-dotnet@v5
with:
dotnet-version: "9.0.x"
dotnet-version: "10.0.x"

- name: Install WorkLoads
run: dotnet workload restore
Expand All @@ -240,13 +240,13 @@ jobs:
uses: actions/upload-artifact@v6
with:
name: VoiceCraft.Server.Windows.${{ matrix.arch }}
path: ./VoiceCraft.Server/bin/Release/net9.0/win-${{ matrix.arch }}/publish
path: ./VoiceCraft.Server/bin/Release/net10.0/win-${{ matrix.arch }}/publish

VoiceCraft-Server-Linux:
runs-on: ubuntu-latest
strategy:
matrix:
arch: [ x64, arm, arm64 ]
arch: [x64, arm, arm64]
fail-fast: false
defaults:
run:
Expand All @@ -256,7 +256,7 @@ jobs:
- name: Setup Dotnet
uses: actions/setup-dotnet@v5
with:
dotnet-version: "9.0.x"
dotnet-version: "10.0.x"

- name: Install WorkLoads
run: dotnet workload restore
Expand All @@ -268,27 +268,30 @@ jobs:
uses: actions/upload-artifact@v6
with:
name: VoiceCraft.Server.Linux.${{ matrix.arch }}
path: ./VoiceCraft.Server/bin/Release/net9.0/linux-${{ matrix.arch }}/publish
path: ./VoiceCraft.Server/bin/Release/net10.0/linux-${{ matrix.arch }}/publish

Publish-Draft:
runs-on: ubuntu-latest
needs: ["VoiceCraft-Client-Windows",
"VoiceCraft-Tests",
"VoiceCraft-Client-Linux",
"VoiceCraft-Client-Android",
"VoiceCraft-Client-iOS",
"VoiceCraft-Client-MacOS",
"VoiceCraft-Server-Windows",
"VoiceCraft-Server-Linux"]
needs:
[
"VoiceCraft-Client-Windows",
"VoiceCraft-Tests",
"VoiceCraft-Client-Linux",
"VoiceCraft-Client-Android",
"VoiceCraft-Client-iOS",
"VoiceCraft-Client-MacOS",
"VoiceCraft-Server-Windows",
"VoiceCraft-Server-Linux",
]
steps:
- uses: actions/checkout@v5

- name: Download Artifacts
uses: actions/download-artifact@v8
with:
skip-decompress: true
path: ./artifacts

- name: Create Draft Release
uses: softprops/action-gh-release@v2
with:
Expand Down
Loading