Skip to content

Update harfbuzz to 14.2.1 - #4167

Merged
mattleibow merged 2 commits into
mainfrom
mattleibow/ubiquitous-doodle
Jun 15, 2026
Merged

Update harfbuzz to 14.2.1#4167
mattleibow merged 2 commits into
mainfrom
mattleibow/ubiquitous-doodle

Conversation

@mattleibow

Copy link
Copy Markdown
Contributor

Updates harfbuzz from 14.2.0 to 14.2.1.

  • externals/skia submodule → dev/update-harfbuzz (DEPS bumped to tag 14.2.1, commit 56feae40)
  • cgmanifest.json14.2.1

Built and tested locally (macOS arm64): native build succeeded, full test suite passed (5703 passed, 0 failed, 13 skipped).

Required skia PR: mono/skia#257

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@github-actions

github-actions Bot commented Jun 15, 2026

Copy link
Copy Markdown
Contributor

📦 Try the packages from this PR

Warning

Do not run these scripts without first reviewing the code in this PR.

Step 1 — Download the packages

bash / macOS / Linux:

curl -fsSL https://raw.githubusercontent.com/mono/SkiaSharp/main/scripts/get-skiasharp-pr.sh | bash -s -- 4167

PowerShell / Windows:

iex "& { $(irm https://raw.githubusercontent.com/mono/SkiaSharp/main/scripts/get-skiasharp-pr.ps1) } 4167"

Step 2 — Add the local NuGet source

dotnet nuget add source ~/.skiasharp/hives/pr-4167/packages --name skiasharp-pr-4167
More options
Option Description
--successful-only / -SuccessfulOnly Only use successful builds
--force / -Force Overwrite previously downloaded packages
--list / -List List available artifacts without downloading
--build-id ID / -BuildId ID Download from a specific build

Or download manually from Azure Pipelines — look for the nuget artifact on the build for this PR.

Remove the source when you're done:

dotnet nuget remove source skiasharp-pr-4167

@github-actions

github-actions Bot commented Jun 15, 2026

Copy link
Copy Markdown
Contributor

📖 Documentation Preview

The documentation for this PR has been deployed and is available at:

🔗 View Staging Site
🔗 View Staging Docs
🔗 View Staging Gallery (Blazor)
🔗 View Staging Gallery (Uno Platform)
🔗 View Staging SkiaFiddle

This preview will be updated automatically when you push new commits to this PR.


This comment is automatically updated by the documentation staging workflow.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@mattleibow
mattleibow merged commit 791be43 into main Jun 15, 2026
3 of 4 checks passed
@mattleibow
mattleibow deleted the mattleibow/ubiquitous-doodle branch June 15, 2026 21:18
mattleibow added a commit that referenced this pull request Jun 22, 2026
The harfbuzz 14.2.1 bump (#4167) advanced the externals/skia submodule and
cgmanifest.json but left scripts/VERSIONS.txt at 14.2.0, so the native soname,
HarfBuzzSharp DLL FileVersion, and NuGet versions drifted out of sync with the
binary. Update the release, soname (0.61421.0), file, and all nuget lines to
14.2.1 to match cgmanifest.json and DEPS.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
mattleibow added a commit that referenced this pull request Jun 22, 2026
Sync VERSIONS.txt with harfbuzz 14.2.1 (#4214)

Changes: harfbuzz/harfbuzz@14.2.0...14.2.1
Context: #4167

The harfbuzz 14.2.1 bump (#4167) advanced the externals/skia submodule and
cgmanifest.json to 14.2.1 but left scripts/VERSIONS.txt at 14.2.0. As a result
the native soname, the HarfBuzzSharp DLL FileVersion, and the published NuGet
versions were all out of sync with the bundled binary. This is not cosmetic:
the soname/file lines feed the native build, so Linux produced
libHarfBuzzSharp.so.0.61420.0 and the DLL reported FileVersion 14.2.0 for a
14.2.1 binary.

Bring all harfbuzz entries to 14.2.1 to match DEPS and cgmanifest.json: release,
soname (0.61421.0, per the in-file 60000 + major*100 + minor*10 + micro formula),
HarfBuzzSharp file, and the HarfBuzzSharp + 9 NativeAssets nuget lines.

The skill gap that caused the miss is fixed separately in #4215.

Co-authored-by: Matthew Leibowitz <mattleibow@live.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
mattleibow added a commit that referenced this pull request Jun 22, 2026
Add VERSIONS.txt step to the native-dependency-update skill (#4215)

Context: #4214

The harfbuzz 14.2.1 bump (#4167) updated cgmanifest.json and the externals/skia
submodule but left scripts/VERSIONS.txt stale at 14.2.0, because the skill never
listed VERSIONS.txt as a step. The prior bump (#4035, 8.3.1 -> 14.2.0) did update
it; this makes that an explicit, documented step so it can't be missed again.

  * Phase 3: add the VERSIONS.txt step with a harfbuzz lines + soname-formula table.
  * Add it to the Pre-Flight checklist, the Phase 5 completion checklist, and the
    NEVER table.
  * Scope it to independently-versioned deps (only harfbuzz); the statically-linked
    deps (libpng, zlib, expat, libwebp, freetype, libjpeg-turbo) have no VERSIONS.txt
    entry and are explicitly excluded.

Co-authored-by: Matthew Leibowitz <mattleibow@live.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

1 participant