Opened 21 months ago

Closed 21 months ago

Last modified 20 months ago

#18278 closed enhancement (fixed)

harfbuzz-8.0.1

Reported by: Bruce Dubbs Owned by: Bruce Dubbs
Priority: normal Milestone: 12.0
Component: BOOK Version: git
Severity: normal Keywords:
Cc:

Description

New major version.

Change History (7)

comment:1 by Bruce Dubbs, 21 months ago

Owner: changed from blfs-book to Bruce Dubbs
Status: newassigned

comment:2 by Bruce Dubbs, 21 months ago

Resolution: fixed
Status: assignedclosed

Updated at commits

6ab6f7b750 Update to exempi-2.6.4.
4c87bc645b Update to xapian-core-1.4.23.
67cfca23a7 Update to harfbuzz-8.0.1.
cc9179dd6b Update to qpdf-11.5.0.
f3991348d2 Update to LMDB_0.9.31.

comment:3 by Xi Ruoyao, 21 months ago

Summary: harfbuzz-8.0.0harfbuzz-8.0.1

Overview of changes leading to 8.0.1 Wednesday, July 12, 2023

  • Build fix on 32-bit arm.
  • More speed optimizations:
    • 60% speedup in retaingids subsetting SourceHanSans-VF.
    • 38% speed up in subsetting (beyond-64k) mega-merged Noto.
    • 16% speed up in retain-gid (used for IFT) subsetting of NotoSansCJKkr.

Overview of changes leading to 8.0.0 Sunday, July 9, 2023

  • New, experimental, WebAssembly (WASM) shaper, that provides greater flexibility over OpenType/AAT/Graphite shaping, using WebAssembly embedded inside the font file. Currently WASM shaper is disabled by default and needs to be enabled at build time. For details, see:

https://github.com/harfbuzz/harfbuzz/blob/main/docs/wasm-shaper.md

For example fonts making use of the WASM shaper, see:

https://github.com/simoncozens/wasm-examples

  • Improvements to Experimental features introduced in earlier releases:
    • Support for subsetting beyond-64k and VarComposites fonts.
    • Support for instancing variable fonts with cubic “glyf” table.
  • Many big speed optimizations:
    • Up to 89% speedup loading variable fonts for shaping.
    • Up to 88% speedup in small subsets of large (eg. CJK) fonts (both TTF and OTF), essential for Incremental Font Transfer (IFT).
    • Over 50% speedup in loading Roboto font for shaping.
    • Up to 40% speed up in loading (sanitizing) complex fonts.
    • 30% speed up in shaping Gulzar font.
    • Over 25% speedup in glyph loading Roboto font.
    • 10% speed up loading glyph shapes in VarComposite Hangul font.
    • hb-hashmap optimizations & hashing improvements.
  • New macro HB_ALWAYS_INLINE. HarfBuzz now inlines functions more aggressively, which results in some speedup at the expense of bigger code size. To disable this feature define the macro to just inline.
  • New API:
    +HB_CODEPOINT_INVALID
    +hb_ot_layout_get_baseline2()
    +hb_ot_layout_get_baseline_with_fallback2()
    +hb_ot_layout_get_font_extents()
    +hb_ot_layout_get_font_extents2()
    +hb_subset_input_set_axis_range()
    

in reply to:  3 ; comment:4 by ken@…, 21 months ago

Replying to Xi Ruoyao:

Overview of changes leading to 8.0.0 Sunday, July 9, 2023

  • New, experimental, WebAssembly (WASM) shaper, that provides greater flexibility over OpenType/AAT/Graphite shaping, using WebAssembly embedded inside the font file. Currently WASM shaper is disabled by default and needs to be enabled at build time. For details, see:

https://github.com/harfbuzz/harfbuzz/blob/main/docs/wasm-shaper.md

For example fonts making use of the WASM shaper, see:

https://github.com/simoncozens/wasm-examples

Thanks for documenting this and the other changes.

From that wasm-examples site this appears to be primarily for Urdu Nastaliq, but also usable for egyptian hieroglyphics and perhaps, based on the example fonts) Devanagari.

However, the README.md file says: "The Harfbuzz WASM shaper is an experimental technology. Feel free to play with it, but don't expect to use it in your fonts any time in the next few years..."

in reply to:  4 ; comment:5 by Xi Ruoyao, 21 months ago

Replying to ken@…:

Replying to Xi Ruoyao:

Overview of changes leading to 8.0.0 Sunday, July 9, 2023

  • New, experimental, WebAssembly (WASM) shaper, that provides greater flexibility over OpenType/AAT/Graphite shaping, using WebAssembly embedded inside the font file. Currently WASM shaper is disabled by default and needs to be enabled at build time. For details, see:

https://github.com/harfbuzz/harfbuzz/blob/main/docs/wasm-shaper.md

For example fonts making use of the WASM shaper, see:

https://github.com/simoncozens/wasm-examples

Thanks for documenting this and the other changes.

From that wasm-examples site this appears to be primarily for Urdu Nastaliq, but also usable for egyptian hieroglyphics and perhaps, based on the example fonts) Devanagari.

However, the README.md file says: "The Harfbuzz WASM shaper is an experimental technology. Feel free to play with it, but don't expect to use it in your fonts any time in the next few years..."

It is disabled by default anyway. Does it need some external dependency?

in reply to:  5 comment:6 by Xi Ruoyao, 21 months ago

Replying to Xi Ruoyao:

Replying to ken@…:

Replying to Xi Ruoyao:

Overview of changes leading to 8.0.0 Sunday, July 9, 2023

  • New, experimental, WebAssembly (WASM) shaper, that provides greater flexibility over OpenType/AAT/Graphite shaping, using WebAssembly embedded inside the font file. Currently WASM shaper is disabled by default and needs to be enabled at build time. For details, see:

https://github.com/harfbuzz/harfbuzz/blob/main/docs/wasm-shaper.md

For example fonts making use of the WASM shaper, see:

https://github.com/simoncozens/wasm-examples

Thanks for documenting this and the other changes.

From that wasm-examples site this appears to be primarily for Urdu Nastaliq, but also usable for egyptian hieroglyphics and perhaps, based on the example fonts) Devanagari.

However, the README.md file says: "The Harfbuzz WASM shaper is an experimental technology. Feel free to play with it, but don't expect to use it in your fonts any time in the next few years..."

It is disabled by default anyway. Does it need some external dependency?

It needs wasm-micro-runtime, I've added the external dependency into the book.

comment:7 by Bruce Dubbs, 20 months ago

Milestone: 11.412.0

Milestone renamed

Note: See TracTickets for help on using tickets.