Version 2.80.0
Skia m80, Vulkan, and WebAssembly · Released July 9, 2020 · NuGet · GitHub Release
API changes · SkiaSharp API diff · HarfBuzzSharp 2.6.1.5
Highlights
Version 2.80.0 is a major platform release built on Skia milestone 80, with broad GPU work, first-class Vulkan support, and the first official WebAssembly and new ARM native packages in this line. It also expands the managed API surface with new text, color, path, and snapshot APIs, while shipping with HarfBuzzSharp 2.6.1.5 for the aligned shaping bindings.
Breaking Changes
None called out for this release.
New Features
Engine
- Skia milestone 80 — Updates the underlying engine to a much newer Skia milestone and carries that work through the 2.80 release family. (#986)
GPU & Rendering
- Vulkan support across supported platforms — Brings Vulkan support to Win32 and broadens the GPU stack across the supported native targets. (#1010, #1287)
- Expanded GPU APIs — Improves the GPU-facing managed APIs and adds snapshot support with bounds for easier diagnostics and capture. (#1294, #1357)
Platform
- WebAssembly support — Adds
libSkiaSharpfor WebAssembly, the corresponding package work, and initial WASM unit-test coverage. (#1359, #1361, #1387, #1389) - Broader native package coverage — Adds Linux ARM32/ARM64, Win32 ARM64, and Alpine native libraries while improving desktop native library loading. (#1382, #1358, #1339, #1342)
API Surface
- New drawing and color APIs — Adds
SKCanvas.DrawTextOnPath,SKPaint.ColorF, andSKPath.ToWinding, plus text API work that alignsSKFontmore closely with glyph-based operations. ❤️ @ziriax (#1198, #1325, #1326, #1299)
Bug Fixes
- Lifetime and disposal fixes — Keeps text blob builders and font sets alive when required and revisits managed/native ownership to prevent premature disposal. (#1365, #1362, #1344)
- Startup and packaging correctness — Fixes package composition, avoids embedding
libSkiaSharpinto assemblies, and fixes startup failures when no GL context is available. (#1366, #1296, #1328)
Community Contributors ❤️
| Contributor | What They Did |
|---|---|
| @ziriax | Implemented SKCanvas.DrawTextOnPath |
Links
Unreleased
Final release prep added packaged WASM support, Linux ARM builds, and a refreshed Tizen toolchain before the 2.80.0 tag.
Preview 33 (June 30, 2020)
This preview hardened WASM and native packaging, added WASM unit tests, and fixed object lifetime issues around text blobs and font sets.
Preview 24 (June 27, 2020)
This preview added Win32 ARM64 support, snapshot bounds APIs, and improved desktop native loading and disposal behavior.
Preview 14 (June 17, 2020)
This preview introduced Alpine native libraries.
Preview 12 (June 11, 2020)
This preview exposed SKPath.ToWinding and SKPaint.ColorF, adjusted packaging, and fixed GL-context startup crashes.
Preview 3 (June 7, 2020)
This first preview delivered the Skia m80 upgrade, Vulkan support, DrawTextOnPath, and the first wave of GPU API improvements.