Version 3.119.0
Major feature release · Released April 29, 2025 · NuGet · GitHub Release
Highlights
This release upgrades the Skia engine to milestone 119 and brings significant platform expansion — Direct3D support on Windows, OpenGL on Windows ARM, tvOS Metal rendering, plus new Linux builds for RISC-V 64, LoongArch64, and Alpine. Nine community contributors drove the majority of user-facing changes, including ❤️ @Kation (Direct3D), ❤️ @ahmed605 (SaveLayerRec), and ❤️ @kasperk81 (RISC-V, Alpine, and more).
Breaking Changes
None in this release.
New Features
Engine
- Skia milestone 119 — Upgrades the underlying Skia graphics engine to Chrome milestone 119, bringing rendering improvements and new codec support. (#3062)
GPU & Rendering
- Direct3D support on Windows — Compiles Skia with Direct3D enabled on Windows, unlocking a new GPU backend. ❤️ @Kation (#2823)
- OpenGL on Windows ARM — Enables the GL backend for Windows ARM64 devices. (#3189)
API Surface
- Missing
SKColorFiltertypes — AddsSKColorFilterfactory methods that were previously unavailable (arithmetic, table, lighting). (#2882) SkCanvas::SaveLayerRec— ExposesSaveLayerwith the fullSaveLayerRecparameter set for advanced compositing. ❤️ @ahmed605 (#2962)
Platform
- tvOS
SKMetalViewsupport — Adds Metal-based rendering views for tvOS, bringing parity with iOS and macOS. ❤️ @MartinZikmund (#3114) - RISC-V 64 build support — Adds native build targets for the RISC-V 64-bit architecture on Linux. ❤️ @kasperk81 (#3192)
- LoongArch64 build support — Adds native build targets for the LoongArch 64-bit architecture on Linux. ❤️ @4Darmygeometry (#3198)
- Alpine Linux support — Extends the clang-cross toolchain to build for musl-based Alpine Linux. ❤️ @kasperk81 (#3200)
- Android NDK r27c with 16 KB page alignment — Updates the Android NDK and enables 16 KB page alignment for newer Android devices. (#3096)
Security
- CVE-2024-30105 addressed — Patches a known vulnerability in the build dependencies. ❤️ @pjcollins (#3166)
- libpng updated to 1.6.44 — Picks up security and bug fixes from upstream libpng. (#3059)
Bug Fixes
- Fixed
SKImage.FromPictureimplementation — Corrects image creation from recorded pictures when no color space is provided; fixes null return. Fixes #3157. (#3231) - Fixed incorrect call in
SafeRef— Resolves a misrouted native call that could cause unexpected behavior. ❤️ @kkwpsv (#3143) - iOS Simulator Metal performance — Avoids unnecessary GPU work on the simulator, dramatically improving performance. ❤️ @taublast (#3156)
- .NET Framework / Mono
packages.configregression — Fixes a packaging regression that broke projects using the classic NuGet format. ❤️ @sungaila (#3112) - Vulkan Memory Allocator updated to 3.2.1 — Picks up stability fixes for Vulkan rendering. ❤️ @kasperk81 (#3196)
- Broader Linux compatibility — Increases the range of supported Linux configurations. (#3209)
Plus several CI, build system, and infrastructure improvements.
Platform Support
| Platform | What's New |
|---|---|
| 🍎 Apple | tvOS SKMetalView, iOS Simulator Metal perf fix |
| 🪟 Windows | Direct3D backend, OpenGL on ARM64 |
| 🐧 Linux | RISC-V 64, LoongArch64, Alpine (musl), broader compatibility |
| 🤖 Android | NDK r27c, 16 KB page alignment |
| 🎨 Core API | Skia m119, new SKColorFilter types, SaveLayerRec |
Community Contributors ❤️
| Contributor | What They Did |
|---|---|
| @Kation | Direct3D support on Windows |
| @ahmed605 | SkCanvas::SaveLayerRec implementation |
| @MartinZikmund | tvOS SKMetalView support |
| @kasperk81 | RISC-V 64, Alpine Linux builds, Vulkan Memory Allocator update |
| @4Darmygeometry | LoongArch64 build support |
| @kkwpsv | SafeRef native call fix |
| @taublast | iOS Simulator Metal performance fix |
| @sungaila | .NET Framework / Mono packages.config fix |
| @pjcollins | CVE-2024-30105 patch |
Links
Preview 1 (April 1, 2025)
Bumped Skia to milestone 119 with Direct3D on Windows, tvOS Metal support, new SKColorFilter types, SaveLayerRec API, RISC-V 64 / LoongArch64 / Alpine Linux builds, and multiple bug fixes including iOS Simulator performance and .NET Framework compatibility.