Skip to content

Commit

Permalink
8.0.0
Browse files Browse the repository at this point in the history
  • Loading branch information
khaledhosny committed Jul 9, 2023
1 parent 5b8ba51 commit b430553
Show file tree
Hide file tree
Showing 7 changed files with 53 additions and 10 deletions.
42 changes: 42 additions & 0 deletions NEWS
@@ -1,3 +1,45 @@
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()


Overview of changes leading to 7.3.0
Tuesday, May 9, 2023
====================================
Expand Down
2 changes: 1 addition & 1 deletion configure.ac
@@ -1,6 +1,6 @@
AC_PREREQ([2.64])
AC_INIT([HarfBuzz],
[7.3.0],
[8.0.0],
[https://github.com/harfbuzz/harfbuzz/issues/new],
[harfbuzz],
[http://harfbuzz.org/])
Expand Down
1 change: 1 addition & 0 deletions docs/harfbuzz-docs.xml
Expand Up @@ -120,6 +120,7 @@
<index id="api-index-full"><title>API Index</title><xi:include href="xml/api-index-full.xml"><xi:fallback /></xi:include></index>
<index id="deprecated-api-index"><title>Index of deprecated API</title><xi:include href="xml/api-index-deprecated.xml"><xi:fallback /></xi:include></index>

<index id="api-index-8-0-0"><title>Index of new symbols in 8.0.0</title><xi:include href="xml/api-index-8.0.0.xml"><xi:fallback /></xi:include></index>
<index id="api-index-7-3-0"><title>Index of new symbols in 7.3.0</title><xi:include href="xml/api-index-7.3.0.xml"><xi:fallback /></xi:include></index>
<index id="api-index-7-1-0"><title>Index of new symbols in 7.1.0</title><xi:include href="xml/api-index-7.1.0.xml"><xi:fallback /></xi:include></index>
<index id="api-index-7-0-0"><title>Index of new symbols in 7.0.0</title><xi:include href="xml/api-index-7.0.0.xml"><xi:fallback /></xi:include></index>
Expand Down
2 changes: 1 addition & 1 deletion meson.build
@@ -1,6 +1,6 @@
project('harfbuzz', 'c', 'cpp',
meson_version: '>= 0.55.0',
version: '7.3.0',
version: '8.0.0',
default_options: [
'cpp_eh=none', # Just to support msvc, we are passing -fno-exceptions also anyway
'cpp_rtti=false', # Just to support msvc, we are passing -fno-rtti also anyway
Expand Down
2 changes: 1 addition & 1 deletion src/hb-common.h
Expand Up @@ -110,7 +110,7 @@ typedef uint32_t hb_codepoint_t;
*
* Unused #hb_codepoint_t value.
*
* XSince: REPLACEME
* Since: 8.0.0
*/
#define HB_CODEPOINT_INVALID ((hb_codepoint_t) -1)

Expand Down
8 changes: 4 additions & 4 deletions src/hb-ot-layout.cc
Expand Up @@ -2075,7 +2075,7 @@ choose_base_tags (hb_script_t script,
*
* Return value: `true` if found script/language-specific font extents.
*
* XSince: REPLACEME
* Since: 8.0.0
**/
hb_bool_t
hb_ot_layout_get_font_extents (hb_font_t *font,
Expand Down Expand Up @@ -2123,7 +2123,7 @@ hb_ot_layout_get_font_extents (hb_font_t *font,
*
* Return value: `true` if found script/language-specific font extents.
*
* XSince: REPLACEME
* Since: 8.0.0
**/
hb_bool_t
hb_ot_layout_get_font_extents2 (hb_font_t *font,
Expand Down Expand Up @@ -2254,7 +2254,7 @@ hb_ot_layout_get_baseline (hb_font_t *font,
*
* Return value: `true` if found baseline value in the font.
*
* XSince: REPLACEME
* Since: 8.0.0
**/
hb_bool_t
hb_ot_layout_get_baseline2 (hb_font_t *font,
Expand Down Expand Up @@ -2511,7 +2511,7 @@ hb_ot_layout_get_baseline_with_fallback (hb_font_t *font,
* This function is like hb_ot_layout_get_baseline_with_fallback() but takes
* #hb_script_t and #hb_language_t instead of OpenType #hb_tag_t.
*
* XSince: REPLACEME
* Since: 8.0.0
**/
void
hb_ot_layout_get_baseline_with_fallback2 (hb_font_t *font,
Expand Down
6 changes: 3 additions & 3 deletions src/hb-version.h
Expand Up @@ -41,13 +41,13 @@ HB_BEGIN_DECLS
*
* The major component of the library version available at compile-time.
*/
#define HB_VERSION_MAJOR 7
#define HB_VERSION_MAJOR 8
/**
* HB_VERSION_MINOR:
*
* The minor component of the library version available at compile-time.
*/
#define HB_VERSION_MINOR 3
#define HB_VERSION_MINOR 0
/**
* HB_VERSION_MICRO:
*
Expand All @@ -60,7 +60,7 @@ HB_BEGIN_DECLS
*
* A string literal containing the library version available at compile-time.
*/
#define HB_VERSION_STRING "7.3.0"
#define HB_VERSION_STRING "8.0.0"

/**
* HB_VERSION_ATLEAST:
Expand Down

0 comments on commit b430553

Please sign in to comment.