diff --git a/Source/LibationUiBase/LibationUiBase.csproj b/Source/LibationUiBase/LibationUiBase.csproj index c3c51eb6..01add8ee 100644 --- a/Source/LibationUiBase/LibationUiBase.csproj +++ b/Source/LibationUiBase/LibationUiBase.csproj @@ -10,9 +10,9 @@ - - + + diff --git a/Source/_Tests/LibationUiBase.Tests/LibationUiBase.Tests.csproj b/Source/_Tests/LibationUiBase.Tests/LibationUiBase.Tests.csproj index efc348fd..c7506689 100644 --- a/Source/_Tests/LibationUiBase.Tests/LibationUiBase.Tests.csproj +++ b/Source/_Tests/LibationUiBase.Tests/LibationUiBase.Tests.csproj @@ -12,8 +12,9 @@ - + brought in by the SkiaSharp package itself the way Windows' and macOS' are. + Bounded to [3.119.4, 4.0.0) to match LibationUiBase and Avalonia.Skia. --> + diff --git a/Source/_Tests/LibationUiBase.Tests/SkiaVersionCheck.cs b/Source/_Tests/LibationUiBase.Tests/SkiaVersionCheck.cs index 56c09267..cf014aeb 100644 --- a/Source/_Tests/LibationUiBase.Tests/SkiaVersionCheck.cs +++ b/Source/_Tests/LibationUiBase.Tests/SkiaVersionCheck.cs @@ -7,7 +7,15 @@ namespace LibationUiBase.Tests; [TestClass] public class SkiaVersionCheck { - + /// + /// Avalonia.Skia runtime links against native SkiaSharp symbols (e.g. sk_fontmgr_ref_default). + /// Major upgrades such as SkiaSharp 4.x remove or rename these native exports, causing an + /// EntryPointNotFoundException crash on launch for Avalonia apps on macOS and Linux (#2115). + /// + /// LibationUiBase locks the SkiaSharp PackageReference to [3.119.4, 4.0.0) so package updaters + /// and automated bots do not bump past 3.x. This test acts as a safety net in CI if the + /// PackageReference is ever manually changed or overridden. + /// [TestMethod] public void SkiaVersionIs3x() {