35 Commits

Author SHA256 Message Date
986c3b6741 Accepting request 1329300 from GNOME:Factory
- Update to version 12.3.2:
  + Fix padding gvar table during subsetting when the original font
    uses long format and subset font using short format.
  + Various fuzzing fixes.
  + Fix NULL pointer deference when malloc fails. (forwarded request 1329065 from iznogood)

OBS-URL: https://build.opensuse.org/request/show/1329300
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/harfbuzz?expand=0&rev=135
2026-01-28 14:07:08 +00:00
9d6db6b454 - Update to version 12.3.2:
+ Fix padding gvar table during subsetting when the original font
    uses long format and subset font using short format.
  + Various fuzzing fixes.
  + Fix NULL pointer deference when malloc fails.

OBS-URL: https://build.opensuse.org/package/show/GNOME:Factory/harfbuzz?expand=0&rev=309
2026-01-26 12:50:32 +00:00
65f663c22d Accepting request 1328916 from GNOME:Factory
Fix incorrect bug ref (forwarded request 1328636 from mgorse)

OBS-URL: https://build.opensuse.org/request/show/1328916
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/harfbuzz?expand=0&rev=134
2026-01-26 09:43:06 +00:00
fa6c7b7a15 Fix incorrect bug ref
OBS-URL: https://build.opensuse.org/package/show/GNOME:Factory/harfbuzz?expand=0&rev=307
2026-01-23 16:21:14 +00:00
41f893b872 - Update to version 12.3.1:
+ Various speed optimizations.
  + Build fixes for GCC 4.9.
  + Fix NULL pointer deference when malloc fails.
- Drop harfbuzz-CVE-2026-22693.patch: Fixed upstream.

OBS-URL: https://build.opensuse.org/package/show/GNOME:Factory/harfbuzz?expand=0&rev=306
2026-01-22 06:35:09 +00:00
fc2fdf9982 Accepting request 1327784 from GNOME:Factory
OBS-URL: https://build.opensuse.org/request/show/1327784
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/harfbuzz?expand=0&rev=133
2026-01-18 21:18:33 +00:00
766e858dea - Add harfbuzz-CVE-2026-22693.patch: fix a NULL pointer dereference
(bsc#1246459 CVE-2026-22693).

OBS-URL: https://build.opensuse.org/package/show/GNOME:Factory/harfbuzz?expand=0&rev=304
2026-01-17 09:16:20 +00:00
0ceed513ab Accepting request 1324682 from GNOME:Factory
- Update to version 12.3.0:
  + Invalid font tables (eg. GSUB/GPOS) are outright rejected,
    instead of partially validated and used. This behavior is
    different from DirectWrite and HarfRust, and is in line with
    CoreText.
  + Various speed optimizations:
    - AAT shaping: speed up state machine on Apple silicon using a
      fast-path.
    - 12% faster in LucidaGrande benchmark.
    - OpenType shaping: speed up (Chain)Context lookup shaping
      using a fast-path and Coverage caching. 20% speedup in
      NotoNastaliqUrdu benchmark.
    - Drawing mega variable-fonts: 30% speedup on GoogleSansFlex
      benchmark.
    - Drawing VARC fonts: 5% speedup on varc-hanzi benchmark.
    - Always apply synthetic slant around horizontal glyph origin
      in hb-draw API.
    - Fix undefined C++ behavior in some uses union.
    - Remove the disabled by default uniscribe-bug-compatible mode
      from Indic and Khmer shapers, that used to be used when
      testing against Uniscribe shaping behaviour.
    - Support full instancing fonts with v2 avar table.
    - Various subsetting, build, fuzzing, and documentation fixes. (forwarded request 1324573 from iznogood)

OBS-URL: https://build.opensuse.org/request/show/1324682
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/harfbuzz?expand=0&rev=132
2025-12-30 11:00:46 +00:00
3cb03d4f36 - Update to version 12.3.0:
+ Invalid font tables (eg. GSUB/GPOS) are outright rejected,
    instead of partially validated and used. This behavior is
    different from DirectWrite and HarfRust, and is in line with
    CoreText.
  + Various speed optimizations:
    - AAT shaping: speed up state machine on Apple silicon using a
      fast-path.
    - 12% faster in LucidaGrande benchmark.
    - OpenType shaping: speed up (Chain)Context lookup shaping
      using a fast-path and Coverage caching. 20% speedup in
      NotoNastaliqUrdu benchmark.
    - Drawing mega variable-fonts: 30% speedup on GoogleSansFlex
      benchmark.
    - Drawing VARC fonts: 5% speedup on varc-hanzi benchmark.
    - Always apply synthetic slant around horizontal glyph origin
      in hb-draw API.
    - Fix undefined C++ behavior in some uses union.
    - Remove the disabled by default uniscribe-bug-compatible mode
      from Indic and Khmer shapers, that used to be used when
      testing against Uniscribe shaping behaviour.
    - Support full instancing fonts with v2 avar table.
    - Various subsetting, build, fuzzing, and documentation fixes.

OBS-URL: https://build.opensuse.org/package/show/GNOME:Factory/harfbuzz?expand=0&rev=302
2025-12-29 10:45:01 +00:00
331fc40c05 Accepting request 1315783 from GNOME:Factory
- Update to version 12.2.0:
  + While Windows platform contain the matching of the ChainContext
    rules to within the syllable for those features that are
    applied per syllable (in Indic-like and USE shapers), in 2015
    we decided that in HarfBuzz we would allow the backtrack /
    lookahead parts of the rule to match across syllables. However,
    our implementation had a latent bug, causing the backtrack
    sequences to be matched within syllable most of the time, and
    inconsistently so. As such, and after empirical testing, we
    have decided to match the Windows implementation for this, so
    now both backtrack and lookahead sequences are contained to
    within the syllable, just like DirectWrite does.
  + Disable legacy kern table for most shapers, enabling it only
    for default, Arabic, Hangul, and Hebrew shapers.
  + When dropping STAT table during subsetting, drop also named IDs
    that are referenced only by it.
  + Don’t apply synthetic slant to glyph origin, fixing horizontal
    shift in slanted glyphs.
  + Various build and fuzzing fixes.
  + Documentation fixes. (forwarded request 1315662 from iznogood)

OBS-URL: https://build.opensuse.org/request/show/1315783
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/harfbuzz?expand=0&rev=131
2025-11-07 17:20:31 +00:00
3cef05023a - Update to version 12.2.0:
+ While Windows platform contain the matching of the ChainContext
    rules to within the syllable for those features that are
    applied per syllable (in Indic-like and USE shapers), in 2015
    we decided that in HarfBuzz we would allow the backtrack /
    lookahead parts of the rule to match across syllables. However,
    our implementation had a latent bug, causing the backtrack
    sequences to be matched within syllable most of the time, and
    inconsistently so. As such, and after empirical testing, we
    have decided to match the Windows implementation for this, so
    now both backtrack and lookahead sequences are contained to
    within the syllable, just like DirectWrite does.
  + Disable legacy kern table for most shapers, enabling it only
    for default, Arabic, Hangul, and Hebrew shapers.
  + When dropping STAT table during subsetting, drop also named IDs
    that are referenced only by it.
  + Don’t apply synthetic slant to glyph origin, fixing horizontal
    shift in slanted glyphs.
  + Various build and fuzzing fixes.
  + Documentation fixes.

OBS-URL: https://build.opensuse.org/package/show/GNOME:Factory/harfbuzz?expand=0&rev=300
2025-11-05 18:37:18 +00:00
6ce40667de Accepting request 1308560 from GNOME:Factory
OBS-URL: https://build.opensuse.org/request/show/1308560
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/harfbuzz?expand=0&rev=130
2025-10-03 13:42:29 +00:00
2c4267d11d - Update to version 12.1.0:
+ Build fixes with GCC 15 on some 32 bit platforms.
  + Fix misaligned pointer use.
  + New API, hb_ot_layout_lookup_collect_glyph_alternates(), to
    collect glyph substitutions from single and alternate
    substitution lookups in one call, instead of getting
    substitutions one by one using
    hb_ot_layout_lookup_get_glyph_alternates().
  + New API: +hb_ot_layout_lookup_collect_glyph_alternates()

- Update to version 12.0.0:
  + The major feature of this release is that the Variable
    Composites / Components (VARC table) addition to the ISO
    OpenFontFormat has graduated from experimental, and is now
    enabled by default. It can be disabled at compile time by
    defining the HB_NO_VAR_COMPOSITESz macro.
  + VARC table is a new way to store glyph outlines, that allows
    for better shape reuse, and can reduce font file size for
    Chinese, Japanese, Korean, and some other scripts drastically.
    Some font design tools provide a similar feature to designers,
    known as "smart components". This technology brings the same
    idea to the compiled font file.
  + The Fontra font editor already supports this technology. Note
    that this new format involves just the HarfBuzz draw API and
    does not affect shaping.
  + Correctly handle markFilteringSet lookup field during
    subsetting.
  + Deduplicate features during subsetting.
  + Disable “more” buffer messages that give more verbose output
    when using buffer messages callbacks, as it has a performance

OBS-URL: https://build.opensuse.org/package/show/GNOME:Factory/harfbuzz?expand=0&rev=298
2025-10-02 09:28:56 +00:00
b5ad7ac925 Accepting request 1306711 from GNOME:Factory
- Update to version 11.5.1:
  + Optimized partial-instancing of fonts with a large number of
    axes. Now over two times faster.
  + Fix C++ STL atomics implementation. (forwarded request 1306586 from iznogood)

OBS-URL: https://build.opensuse.org/request/show/1306711
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/harfbuzz?expand=0&rev=129
2025-09-24 13:22:42 +00:00
9c3cab7e5d - Update to version 11.5.1:
+ Optimized partial-instancing of fonts with a large number of
    axes. Now over two times faster.
  + Fix C++ STL atomics implementation.

OBS-URL: https://build.opensuse.org/package/show/GNOME:Factory/harfbuzz?expand=0&rev=296
2025-09-23 11:49:04 +00:00
b5271e197d Scripted push from GNOME:Next
OBS-URL: https://build.opensuse.org/package/show/GNOME:Factory/harfbuzz?expand=0&rev=295
2025-09-17 15:53:17 +00:00
ad9e0953eb Accepting request 1302016 from GNOME:Factory
- Update to version 11.4.5:
  + Bug fixes for “AAT” shaping, and other shaping micro
    optimizations. (forwarded request 1302007 from iznogood)

OBS-URL: https://build.opensuse.org/request/show/1302016
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/harfbuzz?expand=0&rev=128
2025-09-01 15:16:37 +00:00
94ed42030c Accepting request 1302007 from GNOME:Next
- Update to version 11.4.5:
  + Bug fixes for “AAT” shaping, and other shaping micro
    optimizations.

OBS-URL: https://build.opensuse.org/request/show/1302007
OBS-URL: https://build.opensuse.org/package/show/GNOME:Factory/harfbuzz?expand=0&rev=293
2025-08-30 11:59:34 +00:00
d837d8b5c2 Accepting request 1301466 from GNOME:Factory
- Update to version 11.4.4:
  + Fix a shaping regression affecting mark glyphs in certain
    fonts.
  + Fix pruning of mark filtering sets when subsetting fonts, which
    caused changes in shaping behaviour. (forwarded request 1301336 from iznogood)

OBS-URL: https://build.opensuse.org/request/show/1301466
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/harfbuzz?expand=0&rev=127
2025-08-27 19:33:21 +00:00
45596152f9 - Update to version 11.4.4:
+ Fix a shaping regression affecting mark glyphs in certain
    fonts.
  + Fix pruning of mark filtering sets when subsetting fonts, which
    caused changes in shaping behaviour.

OBS-URL: https://build.opensuse.org/package/show/GNOME:Factory/harfbuzz?expand=0&rev=291
2025-08-26 16:16:16 +00:00
9b61e22bf8 Accepting request 1301222 from GNOME:Factory
OBS-URL: https://build.opensuse.org/request/show/1301222
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/harfbuzz?expand=0&rev=126
2025-08-25 18:36:13 +00:00
78ac0c6e67 - Update to version 11.4.3:
+ Make shaping fail much faster for certain malformed fonts
    (e.g., those that trigger infinite recursion).
  + Fix undefined behaviour introduced in 11.4.2.
  + Fix detection of the “Cambria Math” font when fonts are scaled,
    so the workaround for the bad MATH table constant is applied.

OBS-URL: https://build.opensuse.org/package/show/GNOME:Factory/harfbuzz?expand=0&rev=289
2025-08-25 08:36:44 +00:00
a536725552 - Update to version 11.4.2:
+ Various performance and memory usage improvements.
  + The hb-shape command line tool can now be built with the
    amalgamated harfbuzz.cc source.
  + Fix regression in handling version 2 of avar table.
  + Increase various buffer length limits for better handling of
    fonts that generate huge number of glyphs per codepoint (e.g.
    Noto Sans Duployan).
  + Improvements to the harfrust shaper for more accurate testing.

OBS-URL: https://build.opensuse.org/package/show/GNOME:Factory/harfbuzz?expand=0&rev=288
2025-08-22 11:31:22 +00:00
58e13bcea9 Accepting request 1299403 from GNOME:Factory
- Update to version 11.4.1:
  + Fix clang compiler warnings.
- Changes from version 11.4.0:
  + General shaping and subsetting speedups.
  + Fix in Graphite shaping backend when glyph advances became
    negative.
  + Subsetting improvements, pruning empty mark-attachment lookups.
  + Don't use the macro name _S, which is reserved by system
    liberaries.
  + Build fixes and speedup.
  + Add a kbts shaping backend that calls into the kb_text_shape
    single-header shaping library. This is purely for testing and
    performance evaluation and we do NOT recommend using it for any
    other purposes. (forwarded request 1299331 from iznogood)

OBS-URL: https://build.opensuse.org/request/show/1299403
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/harfbuzz?expand=0&rev=125
2025-08-15 19:51:07 +00:00
509e2ff7f0 - Update to version 11.4.1:
+ Fix clang compiler warnings.
- Changes from version 11.4.0:
  + General shaping and subsetting speedups.
  + Fix in Graphite shaping backend when glyph advances became
    negative.
  + Subsetting improvements, pruning empty mark-attachment lookups.
  + Don't use the macro name _S, which is reserved by system
    liberaries.
  + Build fixes and speedup.
  + Add a kbts shaping backend that calls into the kb_text_shape
    single-header shaping library. This is purely for testing and
    performance evaluation and we do NOT recommend using it for any
    other purposes.

OBS-URL: https://build.opensuse.org/package/show/GNOME:Factory/harfbuzz?expand=0&rev=286
2025-08-14 12:16:21 +00:00
72578bc9c9 Accepting request 1296652 from GNOME:Factory
- Update to version 11.3.3:
  + Fix bug in vertical shaping of fonts without the vmtx table. (forwarded request 1296051 from iznogood)

OBS-URL: https://build.opensuse.org/request/show/1296652
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/harfbuzz?expand=0&rev=124
2025-07-31 15:45:10 +00:00
845461c812 - Update to version 11.3.3:
+ Fix bug in vertical shaping of fonts without the vmtx table.

OBS-URL: https://build.opensuse.org/package/show/GNOME:Factory/harfbuzz?expand=0&rev=284
2025-07-30 18:30:42 +00:00
0f3a27a03e Accepting request 1294977 from GNOME:Factory
OBS-URL: https://build.opensuse.org/request/show/1294977
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/harfbuzz?expand=0&rev=123
2025-07-23 14:32:08 +00:00
71fffdcc5a - Update to version 11.3.2:
+ Fix build with non-compliant C++11 compilers that don't
    recognize the "and" keyword.
- Changes from version 11.3.1:
  + Fix crasher in the glyph_v_origin function introduced in
    11.3.0.
- Changes from version 11.3.0:
  + Speed up handling fonts with very large number of variations.
  + Speed up getting horizontal and vertical glyph advances by up
    to 24%.
  + Significantly speed up vertical text shaping.
  + Various documentation improvements.
  + Various build improvements.
  + Various subsetting improvements.
  + Various improvements to Rust font functions (fontations
    integration) and shaper (HarfRust integration).
  + Rename harfruzz option and shaper to harfrust following
    upstream rename.
  + Implement hb_face_reference_blob() for DirectWrite font
    functions.

OBS-URL: https://build.opensuse.org/package/show/GNOME:Factory/harfbuzz?expand=0&rev=282
2025-07-22 07:45:29 +00:00
fc41d4f0cf Accepting request 1277946 from GNOME:Factory
- Update to version 11.2.1:
  + Various build improvements.
  + Fix build with HB_NO_DRAW and HB_NO_PAINT.
  + Add an optional harfruzz shaper that uses HarfRuzz; an ongoing
    Rust port of HarfBuzz shaping. This shaper is mainly used for
    testing the output of the Rust implementation.
  + Fix regression that caused applying unsafe_to_break() to the
    whole buffer to be ignored.
  + Update USE data files.
  + Fix getting advances of out-of-rage glyph indices in
    DirectWrite font functions.
- Changes from version 11.2.0:
  + Painting of COLRv1 fonts without clip boxes is now about 10
    times faster.
  + Synthetic bold/slant of a sub font is now respected, instead of
    using the parent’s.
  + Glyph extents for fonts synthetic bold/slant are now accurately
    calculated.
  + Various build fixes. (forwarded request 1276943 from iznogood)

OBS-URL: https://build.opensuse.org/request/show/1277946
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/harfbuzz?expand=0&rev=122
2025-05-23 12:27:53 +00:00
f193203bbb Accepting request 1276943 from GNOME:Next
- Update to version 11.2.1:
  + Various build improvements.
  + Fix build with HB_NO_DRAW and HB_NO_PAINT.
  + Add an optional harfruzz shaper that uses HarfRuzz; an ongoing
    Rust port of HarfBuzz shaping. This shaper is mainly used for
    testing the output of the Rust implementation.
  + Fix regression that caused applying unsafe_to_break() to the
    whole buffer to be ignored.
  + Update USE data files.
  + Fix getting advances of out-of-rage glyph indices in
    DirectWrite font functions.
- Changes from version 11.2.0:
  + Painting of COLRv1 fonts without clip boxes is now about 10
    times faster.
  + Synthetic bold/slant of a sub font is now respected, instead of
    using the parent’s.
  + Glyph extents for fonts synthetic bold/slant are now accurately
    calculated.
  + Various build fixes.

OBS-URL: https://build.opensuse.org/request/show/1276943
OBS-URL: https://build.opensuse.org/package/show/GNOME:Factory/harfbuzz?expand=0&rev=280
2025-05-16 06:28:02 +00:00
b4e2561d5c Accepting request 1270274 from GNOME:Factory
- Update to version 11.1.0:
  + Include bidi mirroring variants of the requested codepoints
    when subsetting. The new HB_SUBSET_FLAGS_NO_BIDI_CLOSURE can be
    used to disable this behaviour.
  + Various bug fixes.
  + Various build fixes and improvements.
  + Various test suite improvements. (forwarded request 1270193 from iznogood)

OBS-URL: https://build.opensuse.org/request/show/1270274
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/harfbuzz?expand=0&rev=121
2025-04-18 14:14:44 +00:00
145a00d9c2 - Update to version 11.1.0:
+ Include bidi mirroring variants of the requested codepoints
    when subsetting. The new HB_SUBSET_FLAGS_NO_BIDI_CLOSURE can be
    used to disable this behaviour.
  + Various bug fixes.
  + Various build fixes and improvements.
  + Various test suite improvements.

OBS-URL: https://build.opensuse.org/package/show/GNOME:Factory/harfbuzz?expand=0&rev=278
2025-04-17 10:59:21 +00:00
362890903b Accepting request 1267614 from GNOME:Factory
- Update to version 11.0.1:
  + The change in version 10.3.0 to apply “trak” table tracking
    values to glyph advances directly has been reverted as it
    required every font functions implementation to handle it,
    which breaks existing custom font functions. Tracking is
    instead back to being applied during shaping.
  + When directwrite integration is enabled, we now link to
    dwrite.dll instead of dynamically loading it.
  + A new experimental APIs for getting raw “CFF” and “CFF2”
    CharStrings.
  + We now provide manpages for the various command line utilities.
    Building manpages requires “help2man” and will be skipped if it
    is not present.
  + The command line utilities now set different return value for
    different kinds of failures. Details are provided in the
    manpages.
  + Various fixes and improvements to fontations font functions.
  + All shaping operations using the ot shaper have become memory
    allocation-free.
  + Glyph extents returned by hb-ot and hb-ft font functions are
    now rounded in stead of flooring/ceiling them, which also
    matches what other font libraries do.
  + Fix “AAT” deleted glyph marks interfering with fallback mark
    positioning.
  + Glyph outlines emboldening have been moved out of hb-ot and
    hb-ft font functions to the HarfBuzz font layer, so that it
    works with any font functions implementation.
  + Fix our fallback C++11 atomics integration, which seems to not
    be widely used.
  + Various testing fixes and improvements. (forwarded request 1267275 from iznogood)

OBS-URL: https://build.opensuse.org/request/show/1267614
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/harfbuzz?expand=0&rev=120
2025-04-08 15:50:49 +00:00
e5495e41b9 - Update to version 11.0.1:
+ The change in version 10.3.0 to apply “trak” table tracking
    values to glyph advances directly has been reverted as it
    required every font functions implementation to handle it,
    which breaks existing custom font functions. Tracking is
    instead back to being applied during shaping.
  + When directwrite integration is enabled, we now link to
    dwrite.dll instead of dynamically loading it.
  + A new experimental APIs for getting raw “CFF” and “CFF2”
    CharStrings.
  + We now provide manpages for the various command line utilities.
    Building manpages requires “help2man” and will be skipped if it
    is not present.
  + The command line utilities now set different return value for
    different kinds of failures. Details are provided in the
    manpages.
  + Various fixes and improvements to fontations font functions.
  + All shaping operations using the ot shaper have become memory
    allocation-free.
  + Glyph extents returned by hb-ot and hb-ft font functions are
    now rounded in stead of flooring/ceiling them, which also
    matches what other font libraries do.
  + Fix “AAT” deleted glyph marks interfering with fallback mark
    positioning.
  + Glyph outlines emboldening have been moved out of hb-ot and
    hb-ft font functions to the HarfBuzz font layer, so that it
    works with any font functions implementation.
  + Fix our fallback C++11 atomics integration, which seems to not
    be widely used.
  + Various testing fixes and improvements.

OBS-URL: https://build.opensuse.org/package/show/GNOME:Factory/harfbuzz?expand=0&rev=276
2025-04-07 10:33:16 +00:00
6 changed files with 300 additions and 10 deletions

View File

@@ -3,7 +3,7 @@
<service name="obs_scm" mode="manual">
<param name="scm">git</param>
<param name="url">https://github.com/harfbuzz/harfbuzz.git</param>
<param name="revision">11.0.0</param>
<param name="revision">12.3.2</param>
<param name="versionformat">@PARENT_TAG@+@TAG_OFFSET@</param>
<param name="versionrewrite-pattern">v?(.*)\+0</param>
<param name="versionrewrite-replacement">\1</param>

Binary file not shown.

3
harfbuzz-12.3.2.obscpio Normal file
View File

@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:f17becfc1d4439d6de179713668593880071343d9db49e3152c213134bb0dce6
size 97311246

View File

@@ -1,3 +1,294 @@
-------------------------------------------------------------------
Sun Jan 25 11:36:30 UTC 2026 - Bjørn Lie <bjorn.lie@gmail.com>
- Update to version 12.3.2:
+ Fix padding gvar table during subsetting when the original font
uses long format and subset font using short format.
+ Various fuzzing fixes.
+ Fix NULL pointer deference when malloc fails.
-------------------------------------------------------------------
Wed Jan 21 07:10:47 UTC 2026 - Bjørn Lie <bjorn.lie@gmail.com>
- Update to version 12.3.1:
+ Various speed optimizations.
+ Build fixes for GCC 4.9.
+ Fix NULL pointer deference when malloc fails.
- Drop harfbuzz-CVE-2026-22693.patch: Fixed upstream.
-------------------------------------------------------------------
Fri Jan 16 20:31:35 UTC 2026 - Michael Gorse <mgorse@suse.com>
- Add harfbuzz-CVE-2026-22693.patch: fix a NULL pointer dereference
(bsc#1256459 CVE-2026-22693).
-------------------------------------------------------------------
Sun Dec 28 14:38:23 UTC 2025 - Bjørn Lie <bjorn.lie@gmail.com>
- Update to version 12.3.0:
+ Invalid font tables (eg. GSUB/GPOS) are outright rejected,
instead of partially validated and used. This behavior is
different from DirectWrite and HarfRust, and is in line with
CoreText.
+ Various speed optimizations:
- AAT shaping: speed up state machine on Apple silicon using a
fast-path.
- 12% faster in LucidaGrande benchmark.
- OpenType shaping: speed up (Chain)Context lookup shaping
using a fast-path and Coverage caching. 20% speedup in
NotoNastaliqUrdu benchmark.
- Drawing mega variable-fonts: 30% speedup on GoogleSansFlex
benchmark.
- Drawing VARC fonts: 5% speedup on varc-hanzi benchmark.
- Always apply synthetic slant around horizontal glyph origin
in hb-draw API.
- Fix undefined C++ behavior in some uses union.
- Remove the disabled by default uniscribe-bug-compatible mode
from Indic and Khmer shapers, that used to be used when
testing against Uniscribe shaping behaviour.
- Support full instancing fonts with v2 avar table.
- Various subsetting, build, fuzzing, and documentation fixes.
-------------------------------------------------------------------
Wed Nov 5 07:38:59 UTC 2025 - Bjørn Lie <bjorn.lie@gmail.com>
- Update to version 12.2.0:
+ While Windows platform contain the matching of the ChainContext
rules to within the syllable for those features that are
applied per syllable (in Indic-like and USE shapers), in 2015
we decided that in HarfBuzz we would allow the backtrack /
lookahead parts of the rule to match across syllables. However,
our implementation had a latent bug, causing the backtrack
sequences to be matched within syllable most of the time, and
inconsistently so. As such, and after empirical testing, we
have decided to match the Windows implementation for this, so
now both backtrack and lookahead sequences are contained to
within the syllable, just like DirectWrite does.
+ Disable legacy kern table for most shapers, enabling it only
for default, Arabic, Hangul, and Hebrew shapers.
+ When dropping STAT table during subsetting, drop also named IDs
that are referenced only by it.
+ Dont apply synthetic slant to glyph origin, fixing horizontal
shift in slanted glyphs.
+ Various build and fuzzing fixes.
+ Documentation fixes.
-------------------------------------------------------------------
Wed Oct 1 05:36:01 UTC 2025 - Bjørn Lie <bjorn.lie@gmail.com>
- Update to version 12.1.0:
+ Build fixes with GCC 15 on some 32 bit platforms.
+ Fix misaligned pointer use.
+ New API, hb_ot_layout_lookup_collect_glyph_alternates(), to
collect glyph substitutions from single and alternate
substitution lookups in one call, instead of getting
substitutions one by one using
hb_ot_layout_lookup_get_glyph_alternates().
+ New API: +hb_ot_layout_lookup_collect_glyph_alternates()
-------------------------------------------------------------------
Sun Sep 28 06:53:01 UTC 2025 - Bjørn Lie <bjorn.lie@gmail.com>
- Update to version 12.0.0:
+ The major feature of this release is that the Variable
Composites / Components (VARC table) addition to the ISO
OpenFontFormat has graduated from experimental, and is now
enabled by default. It can be disabled at compile time by
defining the HB_NO_VAR_COMPOSITESz macro.
+ VARC table is a new way to store glyph outlines, that allows
for better shape reuse, and can reduce font file size for
Chinese, Japanese, Korean, and some other scripts drastically.
Some font design tools provide a similar feature to designers,
known as "smart components". This technology brings the same
idea to the compiled font file.
+ The Fontra font editor already supports this technology. Note
that this new format involves just the HarfBuzz draw API and
does not affect shaping.
+ Correctly handle markFilteringSet lookup field during
subsetting.
+ Deduplicate features during subsetting.
+ Disable “more” buffer messages that give more verbose output
when using buffer messages callbacks, as it has a performance
overhead. Users/tools that need the more verbose messages
should define HB_BUFFER_MESSAGE_MORE to 1 when building
HarfBuzz.
+ Shaping and instancing optimizations.
+ Fix subsetting issues when building with GCC 12.
-------------------------------------------------------------------
Mon Sep 22 17:10:23 UTC 2025 - Bjørn Lie <bjorn.lie@gmail.com>
- Update to version 11.5.1:
+ Optimized partial-instancing of fonts with a large number of
axes. Now over two times faster.
+ Fix C++ STL atomics implementation.
-------------------------------------------------------------------
Sat Sep 13 08:40:11 UTC 2025 - Dominique Leuenberger <dimstar@opensuse.org>
- Update to version 11.5.0:
+ Update to Unicode 17.0.0.
+ Subsetter optimizations.
+ Bug fixes for “AAT” shaping, and other shaping micro
optimizations.
-------------------------------------------------------------------
Sat Aug 30 08:51:54 UTC 2025 - Bjørn Lie <bjorn.lie@gmail.com>
- Update to version 11.4.5:
+ Bug fixes for “AAT” shaping, and other shaping micro
optimizations.
-------------------------------------------------------------------
Mon Aug 25 22:06:32 UTC 2025 - Bjørn Lie <bjorn.lie@gmail.com>
- Update to version 11.4.4:
+ Fix a shaping regression affecting mark glyphs in certain
fonts.
+ Fix pruning of mark filtering sets when subsetting fonts, which
caused changes in shaping behaviour.
-------------------------------------------------------------------
Sat Aug 23 09:46:43 UTC 2025 - Bjørn Lie <bjorn.lie@gmail.com>
- Update to version 11.4.3:
+ Make shaping fail much faster for certain malformed fonts
(e.g., those that trigger infinite recursion).
+ Fix undefined behaviour introduced in 11.4.2.
+ Fix detection of the “Cambria Math” font when fonts are scaled,
so the workaround for the bad MATH table constant is applied.
-------------------------------------------------------------------
Thu Aug 21 07:09:39 UTC 2025 - Bjørn Lie <bjorn.lie@gmail.com>
- Update to version 11.4.2:
+ Various performance and memory usage improvements.
+ The hb-shape command line tool can now be built with the
amalgamated harfbuzz.cc source.
+ Fix regression in handling version 2 of avar table.
+ Increase various buffer length limits for better handling of
fonts that generate huge number of glyphs per codepoint (e.g.
Noto Sans Duployan).
+ Improvements to the harfrust shaper for more accurate testing.
-------------------------------------------------------------------
Thu Aug 14 07:43:08 UTC 2025 - Bjørn Lie <bjorn.lie@gmail.com>
- Update to version 11.4.1:
+ Fix clang compiler warnings.
- Changes from version 11.4.0:
+ General shaping and subsetting speedups.
+ Fix in Graphite shaping backend when glyph advances became
negative.
+ Subsetting improvements, pruning empty mark-attachment lookups.
+ Don't use the macro name _S, which is reserved by system
liberaries.
+ Build fixes and speedup.
+ Add a kbts shaping backend that calls into the kb_text_shape
single-header shaping library. This is purely for testing and
performance evaluation and we do NOT recommend using it for any
other purposes.
-------------------------------------------------------------------
Mon Jul 28 08:14:56 UTC 2025 - Bjørn Lie <bjorn.lie@gmail.com>
- Update to version 11.3.3:
+ Fix bug in vertical shaping of fonts without the vmtx table.
-------------------------------------------------------------------
Mon Jul 21 07:38:41 UTC 2025 - Bjørn Lie <bjorn.lie@gmail.com>
- Update to version 11.3.2:
+ Fix build with non-compliant C++11 compilers that don't
recognize the "and" keyword.
- Changes from version 11.3.1:
+ Fix crasher in the glyph_v_origin function introduced in
11.3.0.
- Changes from version 11.3.0:
+ Speed up handling fonts with very large number of variations.
+ Speed up getting horizontal and vertical glyph advances by up
to 24%.
+ Significantly speed up vertical text shaping.
+ Various documentation improvements.
+ Various build improvements.
+ Various subsetting improvements.
+ Various improvements to Rust font functions (fontations
integration) and shaper (HarfRust integration).
+ Rename harfruzz option and shaper to harfrust following
upstream rename.
+ Implement hb_face_reference_blob() for DirectWrite font
functions.
-------------------------------------------------------------------
Mon May 12 17:22:45 UTC 2025 - Bjørn Lie <bjorn.lie@gmail.com>
- Update to version 11.2.1:
+ Various build improvements.
+ Fix build with HB_NO_DRAW and HB_NO_PAINT.
+ Add an optional harfruzz shaper that uses HarfRuzz; an ongoing
Rust port of HarfBuzz shaping. This shaper is mainly used for
testing the output of the Rust implementation.
+ Fix regression that caused applying unsafe_to_break() to the
whole buffer to be ignored.
+ Update USE data files.
+ Fix getting advances of out-of-rage glyph indices in
DirectWrite font functions.
- Changes from version 11.2.0:
+ Painting of COLRv1 fonts without clip boxes is now about 10
times faster.
+ Synthetic bold/slant of a sub font is now respected, instead of
using the parents.
+ Glyph extents for fonts synthetic bold/slant are now accurately
calculated.
+ Various build fixes.
-------------------------------------------------------------------
Thu Apr 17 07:03:28 UTC 2025 - Bjørn Lie <bjorn.lie@gmail.com>
- Update to version 11.1.0:
+ Include bidi mirroring variants of the requested codepoints
when subsetting. The new HB_SUBSET_FLAGS_NO_BIDI_CLOSURE can be
used to disable this behaviour.
+ Various bug fixes.
+ Various build fixes and improvements.
+ Various test suite improvements.
-------------------------------------------------------------------
Sat Apr 5 08:19:12 UTC 2025 - Bjørn Lie <bjorn.lie@gmail.com>
- Update to version 11.0.1:
+ The change in version 10.3.0 to apply “trak” table tracking
values to glyph advances directly has been reverted as it
required every font functions implementation to handle it,
which breaks existing custom font functions. Tracking is
instead back to being applied during shaping.
+ When directwrite integration is enabled, we now link to
dwrite.dll instead of dynamically loading it.
+ A new experimental APIs for getting raw “CFF” and “CFF2”
CharStrings.
+ We now provide manpages for the various command line utilities.
Building manpages requires “help2man” and will be skipped if it
is not present.
+ The command line utilities now set different return value for
different kinds of failures. Details are provided in the
manpages.
+ Various fixes and improvements to fontations font functions.
+ All shaping operations using the ot shaper have become memory
allocation-free.
+ Glyph extents returned by hb-ot and hb-ft font functions are
now rounded in stead of flooring/ceiling them, which also
matches what other font libraries do.
+ Fix “AAT” deleted glyph marks interfering with fallback mark
positioning.
+ Glyph outlines emboldening have been moved out of hb-ot and
hb-ft font functions to the HarfBuzz font layer, so that it
works with any font functions implementation.
+ Fix our fallback C++11 atomics integration, which seems to not
be widely used.
+ Various testing fixes and improvements.
+ Various subsetting fixes and improvements.
+ Various other fixes and improvements.
-------------------------------------------------------------------
Mon Mar 24 06:41:31 UTC 2025 - Bjørn Lie <bjorn.lie@gmail.com>

View File

@@ -1,4 +1,4 @@
name: harfbuzz
version: 11.0.0
mtime: 1742769233
commit: ea6a172f84f2cbcfed803b5ae71064c7afb6b5c2
version: 12.3.2
mtime: 1769256592
commit: b42511e071162fe76102f613a6ccc009726c99af

View File

@@ -1,7 +1,7 @@
#
# spec file for package harfbuzz
#
# Copyright (c) 2025 SUSE LLC
# Copyright (c) 2026 SUSE LLC and contributors
# Copyright (c) 2024 Andreas Stieger <Andreas.Stieger@gmx.de>
#
# All modifications and additions to the file contributed by third parties
@@ -18,7 +18,7 @@
Name: harfbuzz
Version: 11.0.0
Version: 12.3.2
Release: 0
Summary: An OpenType text shaping engine
License: MIT
@@ -159,7 +159,6 @@ export CXXFLAGS="%optflags -std=c++17"
%files tools
%license COPYING
%{_bindir}/hb-info
%{_bindir}/hb-ot-shape-closure
%{_bindir}/hb-shape
%{_bindir}/hb-subset
%{_bindir}/hb-view