Skip to content

fix(build): source Skia natives from committed x64/ + hard-fail; v2.8.1 - #100

Merged
AdaInTheLab merged 1 commit into
mainfrom
fix/v2.8.1-skia-native-packaging
May 29, 2026
Merged

AdaInTheLab merged 1 commit into
mainfrom
fix/v2.8.1-skia-native-packaging

Conversation

@AdaInTheLab

Copy link
Copy Markdown
Collaborator

Cuts v2.8.1 to fix a broken v2.8.0 release artifact.

What was broken

The published KitsuneCommand-v2.8.0.zip was missing libSkiaSharp.dll (the Windows SkiaSharp native), so a clean Windows install's MapTileRenderer throws Unable to load library 'libSkiaSharp'. Root cause: build.ps1 sourced the Windows native only from version-pinned NuGet-cache paths (skiasharp.nativeassets.win32/3.116.1 | 2.80.4) and skipped it with a soft Write-Warning when those weren't on the runner — even though the .dll is committed at src/KitsuneCommand/x64/libSkiaSharp.dll. ModInfo.xml was also stuck at 2.7.4, so the mod self-reported the wrong version.

Fix

  • build.ps1 — both Skia natives now source from the committed src/.../x64/ copies first (exactly like sqlite3.dll), NuGet cache kept as a dev fallback, and a missing native is a hard throw so a future drop fails the build loudly instead of shipping broken.
  • ModInfo.xml2.7.42.8.1.
  • CHANGELOG[2.8.1] section (VIP tiers, join diagnostics, PackRelay Launcher v0.1, this packaging fix).

Verify after merge

Tag v2.8.1, then confirm the produced zip's x64/ contains libSkiaSharp.dll and ModInfo.xml says 2.8.1 before publishing. The broken v2.8.0 release gets deleted.

Note: the live KitsuneDen box was already hand-patched to a working 2.8.1 (carried its existing libSkiaSharp.dll in) and verified healthy — MapTileRenderer initialized successfully, all 12 features up. This PR makes the public artifact correct.

🤖 Generated with Claude Code

The v2.8.0 release zip shipped without libSkiaSharp.dll. build.ps1
sourced the Windows native only from version-pinned NuGet-cache paths
(skiasharp.nativeassets.win32/3.116.1 | 2.80.4) and, when those weren't
present on the CI runner, skipped it with a soft Write-Warning. Result:
a published zip whose Windows map renderer throws "Unable to load
library 'libSkiaSharp'" — even though the .dll is committed in the repo.

- build.ps1: source both Skia natives from the committed src/<mod>/x64/
  copies first (same as sqlite3.dll), NuGet cache as dev fallback, and
  throw (hard build failure) if a native is missing so this can't
  silently recur.
- ModInfo.xml: 2.7.4 -> 2.8.1 (was stuck, so the mod self-reported the
  wrong version vs the release tag).
- CHANGELOG: [2.8.1] section covering VIP tiers, join diagnostics,
  PackRelay Launcher v0.1, and this packaging fix. Supersedes v2.8.0.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@AdaInTheLab
AdaInTheLab merged commit 85e812b into main May 29, 2026
2 checks passed
@AdaInTheLab
AdaInTheLab deleted the fix/v2.8.1-skia-native-packaging branch May 29, 2026 18:37
@codecov

codecov Bot commented May 29, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

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