harfbuzz: Update to version 15.0.0

Message ID 20261024202246.2358763-3-adolf.belka@ipfire.org
State New
Headers
Series harfbuzz: Update to version 15.0.0 |

Commit Message

Adolf Belka 24 Oct 2026, 8:22 p.m. UTC
- Update from version 14.6.0 to 15.0.0
- Update to rootfile
- Changelog
15.0.0
- 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()

Signed-off-by: Adolf Belka <adolf.belka@ipfire.org>
---
 config/rootfiles/common/harfbuzz | 14 +++++++-------
 lfs/harfbuzz                     |  4 ++--
 2 files changed, 9 insertions(+), 9 deletions(-)
  

Patch

diff --git a/config/rootfiles/common/harfbuzz b/config/rootfiles/common/harfbuzz
index ae0ea7e1f..41e7ea776 100644
--- a/config/rootfiles/common/harfbuzz
+++ b/config/rootfiles/common/harfbuzz
@@ -54,25 +54,25 @@  usr/include/harfbuzz/hb-script-list.h
 #usr/lib/cmake/harfbuzz/harfbuzz-config.cmake
 #usr/lib/libharfbuzz-cairo.so
 usr/lib/libharfbuzz-cairo.so.0
-usr/lib/libharfbuzz-cairo.so.0.61460.0
+usr/lib/libharfbuzz-cairo.so.0.61500.0
 #usr/lib/libharfbuzz-gobject.so
 usr/lib/libharfbuzz-gobject.so.0
-usr/lib/libharfbuzz-gobject.so.0.61460.0
+usr/lib/libharfbuzz-gobject.so.0.61500.0
 #usr/lib/libharfbuzz-gpu.so
 usr/lib/libharfbuzz-gpu.so.0
-usr/lib/libharfbuzz-gpu.so.0.61460.0
+usr/lib/libharfbuzz-gpu.so.0.61500.0
 #usr/lib/libharfbuzz-raster.so
 usr/lib/libharfbuzz-raster.so.0
-usr/lib/libharfbuzz-raster.so.0.61460.0
+usr/lib/libharfbuzz-raster.so.0.61500.0
 #usr/lib/libharfbuzz-subset.so
 usr/lib/libharfbuzz-subset.so.0
-usr/lib/libharfbuzz-subset.so.0.61460.0
+usr/lib/libharfbuzz-subset.so.0.61500.0
 #usr/lib/libharfbuzz-vector.so
 usr/lib/libharfbuzz-vector.so.0
-usr/lib/libharfbuzz-vector.so.0.61460.0
+usr/lib/libharfbuzz-vector.so.0.61500.0
 #usr/lib/libharfbuzz.so
 usr/lib/libharfbuzz.so.0
-usr/lib/libharfbuzz.so.0.61460.0
+usr/lib/libharfbuzz.so.0.61500.0
 #usr/lib/pkgconfig/harfbuzz-cairo.pc
 #usr/lib/pkgconfig/harfbuzz-gobject.pc
 #usr/lib/pkgconfig/harfbuzz-gpu.pc
diff --git a/lfs/harfbuzz b/lfs/harfbuzz
index 42fea44ad..bfa4a5773 100644
--- a/lfs/harfbuzz
+++ b/lfs/harfbuzz
@@ -24,7 +24,7 @@ 
 
 include Config
 
-VER        = 14.6.0
+VER        = 15.0.0
 
 THISAPP    = harfbuzz-$(VER)
 DL_FILE    = $(THISAPP).tar.xz
@@ -40,7 +40,7 @@  objects = $(DL_FILE)
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
 
-$(DL_FILE)_BLAKE2 = d65745c89cdbc10cc6a521b467ef90eabd93a63285de15345b8d41f51cd9229882234c10fcfd2045ccab3aad6144c9f1e5dd47e7a2b1086bedea3cfb8b7e8c5a
+$(DL_FILE)_BLAKE2 = 56686345929cc566e4c35a47e836367837e7d1c977ab8513d32d36e3304acd920d41f63b57bd1d5732f14b9fd632b8e8b0e51fe8bbb76efc3ee2fc4a086af1ee
 
 install : $(TARGET)