Version 2.88.4
.NET 8 preview, ARM64 macOS, and security updates · Released August 22, 2023 · NuGet · GitHub Release
Highlights
A substantial servicing release spanning nearly a year of work. Key additions include .NET 8 preview support, ARM64 macOS build machines, WASM multi-threading with SIMD, and Android .aar shipping in NuGet. Security updates cover zlib, libpng, and libexpat. Ten new community contributors helped fix disposal bugs, improve performance, and refine Uno Platform integration.
Breaking Changes
None in this release.
New Features
Platform
- .NET 8 Preview support — Build infrastructure updated for .NET 8 Preview 4. ❤️ @jeromelaban (#2457)
- ARM64 macOS build machines — Native builds now run on Apple Silicon (ARM64) macOS machines. (#2468)
- WASM multi-threading and SIMD — Added multi-threaded and multi-threaded+SIMD WASM configurations. ❤️ @jeromelaban (#2286)
- WASM Exception Handling and SIMD for .NET 8+ — Enabled Wasm EH and SIMD in all configurations for .NET 8 and later. ❤️ @jeromelaban (#2495)
- Blazor .NET 8 assets — New WASM assets included for Blazor on .NET 8. (#2497)
- JSImport for WinUI on .NET 7 — Moved from JS interop to modern
JSImportfor Uno WinUI WASM targets. ❤️ @jeromelaban (#2428) - Ship .aar with Android NuGet — Android Archive (
.aar) now included in the NuGet for better Android tooling integration. ❤️ @dellis1972 (#2465) - iOS Hot Restart NativeReference — Added
NativeReferencemetadata so iOS Hot Restart works correctly. (#2553) - iOS Simulator RID artifacts — The
iossimulatorRID now ships native assets. (#2498) - Windows App SDK update — Bumped to a newer Windows App SDK. (#2276)
Engine
- SKColor hex parsing performance — Significantly improved hex string parsing performance for
SKColor. ❤️ @jwikberg (#2467) - CodeQL security scanning — Enabled CodeQL analysis in CI for automated vulnerability detection. ❤️ @Redth (#2303)
- CVE binary tool scanning — Added
cve-bin-toolto CI for detecting known vulnerabilities in native binaries. (#2490)
Security
- Update zlib to 1.2.13 — Addresses known vulnerabilities in the compression library. (#2484)
- Update libpng to v1.6.40 — Addresses known vulnerabilities. (#2510)
- Update libexpat to 2.5.0 — Addresses known vulnerabilities. (#2510)
Bug Fixes
- Fix Tizen canvas size calculation — Corrected how canvas dimensions are computed on Tizen. ❤️ @myroot (#2322)
- Fix Android ObjectDisposedException — Added additional checks to avoid
ObjectDisposedExceptionon Android views. ❤️ @FoggyFinder (#2313) - Fix SKCanvasView dispose before render — Prevents exceptions when the view is disposed before its first render. ❤️ @jjzhang12 (#2472)
- Fix
ToRectextension method — Corrected theToRectextension to return proper values. ❤️ @niza93 (#2392) - Fix Uno opaque defaults on iOS/macOS — Set
SKSwapChainPanelandSKXamlCanvasto non-opaque by default for consistency. ❤️ @roubachof (#2398, #2400, #2401) - Fix macOS opaque method — Used the correct method for setting
Opaqueon macOS. (#2477) - Fix bitmap SKAlphaType in WASM — Corrected alpha type when rendering bitmaps in
SKXamlCanvason WASM. ❤️ @roubachof (#2443) - Disambiguate SKGLView for Uno/MAUI — Resolved type conflicts between Uno and MAUI
SKGLViewtargets. ❤️ @jeromelaban (#2529)
Platform Support
| Platform | What's New |
|---|---|
| 🍎 Apple | ARM64 macOS builds, iOS Hot Restart support, iOS Simulator RID, opaque fix |
| 🪟 Windows | Updated Windows App SDK |
| 🤖 Android | .aar in NuGet, ObjectDisposedException fix, canvas dispose fix |
| 🌐 WebAssembly | Multi-threading, SIMD, .NET 8 Blazor, JSImport for WinUI, alpha type fix |
Community Contributors ❤️
| Contributor | What They Did |
|---|---|
| @Redth | CodeQL security scanning |
| @roubachof | Uno opaque defaults and WASM alpha type fixes |
| @dellis1972 | Android .aar in NuGet |
| @FoggyFinder | Android ObjectDisposedException guard |
| @jjzhang12 | SKCanvasView dispose-before-render fix |
| @jwikberg | SKColor hex parsing performance |
| @niza93 | ToRect extension method fix |
| @JamieMagee | $schema for cgmanifest.json |
| @Lehonti | Code cleanup with block-scoped using |
| @myroot | Tizen canvas size fix |
| @jeromelaban | WASM MT+SIMD, .NET 8, JSImport, SKGLView disambiguation |
Links
Preview 96 (August 22, 2023)
.NET SDK version tracking improvements.
Preview 95 (August 22, 2023)
Updated libpng and libexpat, SKGLView disambiguation for Uno/MAUI, and iOS Hot Restart support.
Preview 82 (June 26, 2023)
Blazor .NET 8 assets, ToRect fix, JSImport for WinUI, and iOS Simulator RID.
Preview 76 (June 19, 2023)
ARM64 macOS builds, SKColor hex parsing performance, and WASM EH+SIMD for .NET 8.
Preview 70 (June 16, 2023)
Initial preview with .NET 5 SDK removal, Windows App SDK update, WASM multi-threading, zlib 1.2.13, CodeQL scanning, and multiple Uno/Android/Tizen bug fixes.