Skip to content

Update DemaConsulting.Rendering.Skia to 0.2.0 and add SkiaSharp assets - #59

Merged
Malcolmnixon merged 1 commit into
mainfrom
fix/skia-native-assets-for-rendering-0.2.0
Aug 28, 2026
Merged

Update DemaConsulting.Rendering.Skia to 0.2.0 and add SkiaSharp assets#59
Malcolmnixon merged 1 commit into
mainfrom
fix/skia-native-assets-for-rendering-0.2.0

Conversation

@Malcolmnixon

Copy link
Copy Markdown
Member

This pull request updates both the tool and test projects to use newer versions of the rendering packages and to explicitly manage native SkiaSharp assets, ensuring proper cross-platform support for both the application and its tests.

Dependency Updates:

  • Upgraded DemaConsulting.Rendering.Svg and DemaConsulting.Rendering.Skia package references from version 0.1.0 to 0.2.0 in both DemaConsulting.SysML2Tools.Tool.csproj and DemaConsulting.SysML2Tools.Tests.csproj. [1] [2]

Native Asset Management:

  • In DemaConsulting.SysML2Tools.Tool.csproj, added unconditional package references for SkiaSharp.NativeAssets.Win32, SkiaSharp.NativeAssets.Linux.NoDependencies, and SkiaSharp.NativeAssets.macOS to ensure all native assets are included for cross-platform packaging.
  • In DemaConsulting.SysML2Tools.Tests.csproj, added OS-conditioned package references for the appropriate SkiaSharp.NativeAssets package based on the host OS, ensuring the test project provides the correct native asset at runtime.

…ve assets

Rendering.Skia 0.2.0 no longer depends on SkiaSharp.NativeAssets.*
(managed SkiaSharp core only - see demaconsulting/Rendering PR that
removed the library-baked, OS-conditioned native asset references,
which were unsafe for a packed library and could collide with other
SkiaSharp native asset package IDs in a consumer's dependency graph).

Bump DemaConsulting.Rendering.Svg/Skia to 0.2.0 in both the tool and
its test project, and add explicit SkiaSharp.NativeAssets.*
PackageReferences at these two consumption points, which are the
correct application/publish boundaries for that choice:

- DemaConsulting.SysML2Tools.Tool.csproj: unconditioned Win32/macOS
  and Linux.NoDependencies references (the tool is packed once as a
  single cross-platform dotnet tool, with TrimPublishedNativeAssets
  curating the final RID set - unchanged behavior, verified below).
- DemaConsulting.SysML2Tools.Tests.csproj: OS-conditioned references
  (this project builds and runs on a single host per CI job, never
  packed for cross-platform distribution).

Verified on native Ubuntu (WSL):
- Build succeeds, 0 warnings/errors.
- All non-skipped tests pass (net8.0/net10.0; net9.0 runtime is simply
  not installed in this WSL image).
- Published tool contains exactly the curated native asset RIDs, no
  stray .pdb files, and the Linux binary is confirmed (by hash) to be
  the SkiaSharp.NativeAssets.Linux.NoDependencies flavor as intended.
- The published tool runs successfully on Linux (--version loads
  libSkiaSharp.so without error).

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@Malcolmnixon
Malcolmnixon merged commit 5a470e6 into main Aug 28, 2026
9 checks passed
@Malcolmnixon
Malcolmnixon deleted the fix/skia-native-assets-for-rendering-0.2.0 branch August 28, 2026 02:41
This was referenced Aug 31, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant