Back to Skiasharp

2.80.3

documentation/docfx/releases/2.80.3.md

4.150.011.9 KB
Original Source
<!-- RAW PR DATA — Do not remove this comment block. AI uses this data to generate the polished release notes below. Re-run the script to refresh this data from git history. Generated: 2026-06-17T23:56:01Z by generate-release-notes.py version: 2.80.3 status: stable branch: release/2.80.3 diff: release/2.80.2..release/2.80.3 prs: 55 api: self=2.80.3/index.md;hb=2.6.1.8 PRs grouped by the preview they first shipped in (newest first). Render each milestone as a trailing "## <label> (<date>)" section per TEMPLATE.md, and merge them all for the top-level Highlights: ## Unreleased — not yet in a tagged preview (1 PRs) - Update WinUI to 0.8.0 by @mattleibow in https://github.com/mono/SkiaSharp/pull/1741 ## Preview 93 · 2.80.3 · 2021-06-11 · https://github.com/mono/SkiaSharp/compare/v2.80.3-preview.90...v2.80.3-preview.93 (1 PRs) - Add support for SKXamlCanvas on Uno Platform SkiaSharp backends v2.0 (#1634) by @mattleibow in https://github.com/mono/SkiaSharp/pull/1704 ## Preview 90 · 2.80.3 · 2021-05-30 · https://github.com/mono/SkiaSharp/compare/v2.80.3-preview.40...v2.80.3-preview.90 (25 PRs) - Add .NET Interactive Support by @mattleibow in https://github.com/mono/SkiaSharp/pull/1710 - Update Uno by @mattleibow in https://github.com/mono/SkiaSharp/pull/1708 - Properly Detect & Handle Musl Systems by @mattleibow in https://github.com/mono/SkiaSharp/pull/1657 - Roll back to a specific version of Xamarin.iOS that works with XCode 12.4 by @mattleibow in https://github.com/mono/SkiaSharp/pull/1703 - Add support for WinUI for Desktop by @mattleibow in https://github.com/mono/SkiaSharp/pull/1696 - Improve build props/targets by @mattleibow in https://github.com/mono/SkiaSharp/pull/1698 - Update to .NET 5.0 by @mattleibow in https://github.com/mono/SkiaSharp/pull/1697 - Pack things correctly and pin the xharness version by @mattleibow in https://github.com/mono/SkiaSharp/pull/1685 - avoid issues with failure to create gl surface by @gmurray81 in https://github.com/mono/SkiaSharp/pull/1642 [community ✨] - Swap the buffers after a resize by @mattleibow in https://github.com/mono/SkiaSharp/pull/1668 - Fix Android Test Runner by @mattleibow in https://github.com/mono/SkiaSharp/pull/1665 - Fix The Bad Things by @mattleibow in https://github.com/mono/SkiaSharp/pull/1662 - Split the packages up for better downloads by @mattleibow in https://github.com/mono/SkiaSharp/pull/1660 - Expose IsAbandoned in the C# API by @mattleibow in https://github.com/mono/SkiaSharp/pull/1659 - Make sure to properly read image pixels by @mattleibow in https://github.com/mono/SkiaSharp/pull/1636 - Add the arm64 build target by @mattleibow in https://github.com/mono/SkiaSharp/pull/1627 - Run nightly builds to ensure always green by @mattleibow in https://github.com/mono/SkiaSharp/pull/1651 - Attempt to use the local ChromeDriver first by @mattleibow in https://github.com/mono/SkiaSharp/pull/1653 - Add iOS device tests by @mattleibow in https://github.com/mono/SkiaSharp/pull/1638 - Add Tests for Mobile (Android and iOS) by @mattleibow in https://github.com/mono/SkiaSharp/pull/1630 - Be a bit more defensive in the display links by @mattleibow in https://github.com/mono/SkiaSharp/pull/1620 - Refactor the Android surface factory by @mattleibow in https://github.com/mono/SkiaSharp/pull/1617 - Introduce some metal consistency by @mattleibow in https://github.com/mono/SkiaSharp/pull/1615 - Add the SKRuntimeEffect API by @mattleibow in https://github.com/mono/SkiaSharp/pull/1604 - Merge Metal APIs from main branch by @mattleibow in https://github.com/mono/SkiaSharp/pull/1598 ## Preview 40 · 2.80.3 · 2021-02-05 · https://github.com/mono/SkiaSharp/compare/v2.80.3-preview.24...v2.80.3-preview.40 (10 PRs) - Expose GRContextOptions by @mattleibow in https://github.com/mono/SkiaSharp/pull/1529 - Make SKElement.OnRender do nothing if there is no PresentationSource by @HarlanHugh in https://github.com/mono/SkiaSharp/pull/1606 [community ✨] - Add a few APIs that make things better later by @mattleibow in https://github.com/mono/SkiaSharp/pull/1603 - docs: Add unoplatform references by @jeromelaban in https://github.com/mono/SkiaSharp/pull/1602 [community ✨] - Add Metal APIs for macOS and iOS by @mattleibow in https://github.com/mono/SkiaSharp/pull/1394 - Remove the externals/harfbuzz submodule by @mattleibow in https://github.com/mono/SkiaSharp/pull/1599 - Improve the local builds by @mattleibow in https://github.com/mono/SkiaSharp/pull/1597 - Make things consistent by @mattleibow in https://github.com/mono/SkiaSharp/pull/1595 - Update Xcode & .NET Core 3.1 by @mattleibow in https://github.com/mono/SkiaSharp/pull/1594 - Improve the local builds by @mattleibow in https://github.com/mono/SkiaSharp/pull/1593 ## Preview 24 · 2.80.3 · 2021-01-27 · https://github.com/mono/SkiaSharp/compare/v2.80.3-preview.18...v2.80.3-preview.24 (5 PRs) - Build and include all the emscripten version for WASM by @mattleibow in https://github.com/mono/SkiaSharp/pull/1590 - Add a picture test to the WASM tests by @mattleibow in https://github.com/mono/SkiaSharp/pull/1592 - Update externals for new gn and add helper script by @mattleibow in https://github.com/mono/SkiaSharp/pull/1591 - Use v2 Signing by @mattleibow in https://github.com/mono/SkiaSharp/pull/1568 - Update to a later Tizen Studio by @mattleibow in https://github.com/mono/SkiaSharp/pull/1566 ## Preview 18 · 2.80.3 · 2020-10-28 · https://github.com/mono/SkiaSharp/compare/v2.80.2...v2.80.3-preview.18 (13 PRs) - Support VS 2013 because it is easy to do so by @mattleibow in https://github.com/mono/SkiaSharp/pull/1536 - Load the fonts on iOS by @mattleibow in https://github.com/mono/SkiaSharp/pull/1539 - Update the ChromeDriver by @mattleibow in https://github.com/mono/SkiaSharp/pull/1540 - Add support for reading the Exif SubIFD by @mattleibow in https://github.com/mono/SkiaSharp/pull/1518 - Ensure that SKMatrix.IsInvertible does not crash by @mattleibow in https://github.com/mono/SkiaSharp/pull/1527 - Register the new HarfBuzzSharp WASM package by @mattleibow in https://github.com/mono/SkiaSharp/pull/1525 - Generate the interop with harfbuzz by @mattleibow in https://github.com/mono/SkiaSharp/pull/1447 - Allow to create ANGLE GRGlInterface by @Mikolaytis in https://github.com/mono/SkiaSharp/pull/1519 [community ✨] - Update Uno Platform to v3.0 by @mattleibow in https://github.com/mono/SkiaSharp/pull/1489 - Add bindings for the serialization of SKPicture by @mattleibow in https://github.com/mono/SkiaSharp/pull/1514 - Update the version to 2.80.3 by @mattleibow in https://github.com/mono/SkiaSharp/pull/1512 - Update MSBuild.Sdk.Extras by @mattleibow in https://github.com/mono/SkiaSharp/pull/1511 - Don't allocate arrays when copying streams by @mattleibow in https://github.com/mono/SkiaSharp/pull/1510 --> <!-- Generated: 2026-06-18T00:00:00Z by claude-sonnet-4.5 -->

Version 2.80.3

Platform expansion release · Released July 12, 2021 · NuGet · GitHub Release

API changes · SkiaSharp API diff · HarfBuzzSharp 2.6.1.8

Highlights

SkiaSharp 2.80.3 broadened platform support across Apple, Windows, WebAssembly, and Uno while also adding notable new rendering APIs. This release brought Metal support to Apple platforms, introduced SKRuntimeEffect, expanded GPU configuration hooks, and rounded things out with a solid set of stability fixes from community contributors.

Breaking Changes

None in this release.

New Features

GPU & Rendering

  • Metal APIs for Apple platforms — Adds Metal support for macOS and iOS bindings, opening the door to newer Apple GPU backends. (#1394)
  • Runtime shader support — Introduces the SKRuntimeEffect API so applications can compile and run custom SkSL effects. (#1604)
  • More GPU control points — Exposes GRContextOptions and IsAbandoned so apps can better inspect and configure GPU resources. (#1529, #1659)

Platform

  • WinUI and Uno expansion — Adds support for WinUI Desktop and the Uno Platform SKXamlCanvas backend. (#1696, #1704)
  • Interactive and WebAssembly scenarios — Adds .NET Interactive support, broadens WebAssembly packaging, and introduces an ARM64 build target. (#1710, #1590, #1627)

Images & Documents

  • More metadata and serialization APIs — Adds Exif SubIFD reading plus bindings for serializing SKPicture content. (#1518, #1514)

Bug Fixes

  • Safer OpenGL surface setup — Avoids failures when creating GL surfaces in more edge cases. ❤️ @gmurray81 (#1642)
  • More reliable image and matrix operations — Fixes image pixel reads and prevents crashes when checking SKMatrix.IsInvertible. (#1636, #1527)
  • Better Linux compatibility — Improves musl-based distro detection for native loading. (#1657)

Platform Support

PlatformWhat's New
🍎 AppleMetal APIs, iOS font-loading improvements
🪟 WindowsWinUI Desktop support, broader legacy toolchain compatibility
🌐 WebAssemblyMore packaged variants and .NET Interactive support
🎨 Core APISKRuntimeEffect, GRContextOptions, IsAbandoned, SKPicture serialization

Community Contributors ❤️

ContributorWhat They Did
@gmurray81Improved resilience when creating GL surfaces
@HarlanHughPrevented SKElement.OnRender from running when no presentation source exists
@MikolaytisAdded ANGLE GRGlInterface creation support

Unreleased

Final stabilization updated the bundled WinUI dependency ahead of the stable tag.


Preview 93 (June 11, 2021)

Added Uno Platform backend support for SKXamlCanvas.

Full Changelog


Preview 90 (May 30, 2021)

Added .NET Interactive support, WinUI Desktop integration, SKRuntimeEffect, and a broad round of platform fixes.

Full Changelog


Preview 40 (February 5, 2021)

Brought in Metal APIs for Apple platforms and exposed new GPU configuration hooks.

Full Changelog


Preview 24 (January 27, 2021)

Expanded WebAssembly packaging and refreshed signing and Tizen tooling.

Full Changelog


Preview 18 (October 28, 2020)

Added Exif SubIFD support, SKPicture serialization bindings, and several Apple and ANGLE fixes.

Full Changelog