Opened 3 weeks ago
Closed 3 weeks ago
#24166 closed enhancement (fixed)
harfbuzz-15.0.0
| Reported by: | Bruce Dubbs | Owned by: | Joe Locash |
|---|---|---|---|
| Priority: | normal | Milestone: | 13.2 |
| Component: | BOOK | Version: | git |
| Severity: | normal | Keywords: | |
| Cc: |
Description
New major version.
Change History (2)
comment:1 by , 3 weeks ago
| Owner: | changed from to |
|---|---|
| Status: | new → assigned |
comment:2 by , 3 weeks ago
| Resolution: | → fixed |
|---|---|
| Status: | assigned → closed |
Note:
See TracTickets
for help on using tickets.

Overview of changes leading to 15.0.0 Thursday, October 22, 2026 ===================================== - Support for the new tables and formats in the ISO Open Font Format (OFF) 5th edition is now enabled by default: * New tables and formats for 24-bit glyph indices (a.k.a. beyond-64k): the `GLYF`, `LOCA`, `GVAR`, `MAXP`, `HHEA`, `HMTX`, `VHEA`, and `VMTX` tables, `cmap` format 15, `VORG` version 2, `COLR` `PaintGlyph2`, the 24-bit `GSUB`, `GPOS`, `GDEF`, `BASE`, and `JSTF` formats, and extended TrueType Collection directories. A test font, `NotoSans-beyond64k.ttf`, which merges the Noto Sans fonts into a single font, can be found at: https://drive.google.com/file/d/1vMQI9mZMzfKIMHD96Iie40Oyo9NnnweH/view * Cubic curves in `GLYF` outlines. * The `DMAP` table, supported since 14.6.0. - Support instancing axes not referenced by retained `VARC` data. The latest `VARC` test fonts can be found at: https://github.com/notofonts/noto-cjk-varco/releases/tag/v0.005 - The raster (`libharfbuzz-raster`), vector (`libharfbuzz-vector`), and GPU (`libharfbuzz-gpu`) libraries are no longer considered experimental. This means that the HarfBuzz API and ABI stability guarantees now apply to these libraries as well. - Fix possible use-after-free in `hb_font_set_face()`, which now resets the font functions to the defaults for the new face. The function is now deprecated. Use `hb_font_create()` instead. - Fix heap-buffer-overflow in `hb_font_set_variation()` after `hb_font_set_face()` switches to a face with more variation axes. - Subsetting `CFF` and `CFF2` fonts whose subroutine calls are not preceded by an immediate subroutine number now fails instead of silently dropping the table, unless desubroutinizing. - Overriding atomic operators at compile time is not supported anymore. - Rewrite the number parser without Ragel, fixing various edge cases. - Harden the experimental WebAssembly shaper against malicious fonts. - Update the experimental Rust shaper (HarfRust) to 0.15, and the `fontations` font functions to read-fonts 0.46. - Update the `kbts` shaping backend to `kb_text_shape` 2.28g, and support font variations in it. - Various subsetting and instancing fixes, especially for `CFF2`, `COLR`, and variable layout tables. - Various fixes to the raster and vector libraries. - Various variable font fixes. - Various fixes for malformed fonts. - Various documentation fixes. - Various build and CI fixes. - Deprecated API: -hb_font_set_face()Fixed at a53d43ad51.