Skip to content

Support hexadecimal OpenType language and script overrides - #476

Merged
behdad merged 1 commit into
mainfrom
fix/hex-private-use-tags
Sep 16, 2026
Merged

behdad merged 1 commit into
mainfrom
fix/hex-private-use-tags

Conversation

@behdad

@behdad behdad commented Sep 16, 2026

Copy link
Copy Markdown
Member

Hexadecimal private-use tags such as x-hbot-4d4f4e54 were ignored, so the MONT language system used in Myanmar shaping tests was not selected. Decode the first eight hexadecimal digits after hbot- or hbsc- as an OpenType language or script tag, matching HarfBuzz.

Add regression coverage for MONT, script overrides, byte and case preservation, default tags, malformed input, trailing digits, and override precedence, plus a changelog entry. All 36 new cases were checked against a locally built HarfBuzz library.

Validation passed:

  • cargo test --workspace
  • cargo test --workspace --features icu
  • cargo build -p harfrust --no-default-features --features libm
  • cargo fmt --all -- --check
  • cargo clippy --all-features --all-targets -- -D warnings

@behdad
behdad requested a review from dfrg September 16, 2026 18:56
@behdad
behdad merged commit 19cf334 into main Sep 16, 2026
3 checks passed
@behdad
behdad deleted the fix/hex-private-use-tags branch September 16, 2026 19:02
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