commit 45df259538c204540819d74456d30ffb40df488a
Author: Khaled Hosny <khaled@aliftype.com>
Date:   Mon Jan 31 23:06:10 2022 +0200

    3.3.1

 NEWS             | 23 +++++++++++++++--------
 configure.ac     |  2 +-
 meson.build      |  2 +-
 src/hb-version.h |  4 ++--
 4 files changed, 19 insertions(+), 12 deletions(-)

commit 4e2f409bce77b97de2d098365977beeeb4447b1e
Author: Garret Rieger <grieger@google.com>
Date:   Mon Jan 31 12:20:32 2022 -0800

    [subset] Don't hold references to members of the active_glyph_stack.
    
    These references may get invalidated after the vector for the stack is resized. Fixes: https://oss-fuzz.com/testcase-detail/5422577634377728

 src/hb-ot-layout-gsubgpos.hh                       |  54 +++++++++++++--------
 ...ase-minimized-hb-subset-fuzzer-5422577634377728 | Bin 0 -> 1700 bytes
 2 files changed, 34 insertions(+), 20 deletions(-)

commit 98da3306384044c6c73904d9a2a5996da16504ea
Author: Khaled Hosny <khaled@aliftype.com>
Date:   Mon Jan 31 18:12:01 2022 +0200

    3.3.0

 NEWS                   | 32 +++++++++++++++++++++++++++++++-
 configure.ac           |  2 +-
 docs/harfbuzz-docs.xml |  1 +
 meson.build            |  2 +-
 src/hb-buffer.cc       | 11 +++++------
 src/hb-buffer.h        |  2 +-
 src/hb-font.cc         | 19 ++++++++++++-------
 src/hb-version.h       |  4 ++--
 8 files changed, 54 insertions(+), 19 deletions(-)

commit 3e8742e37631e0570e6e635c02302e3df2b548a0
Merge: bc899650c ae9afd977
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Jan 30 17:19:46 2022 -0800

    Merge pull request #3402 from harfbuzz/language-tags
    
    Make miscellaneous changes to hb-ot-tag-table.hh

commit ae9afd9772e909476d28fb647d7f7aef6865f6cd
Author: David Corbett <corbett.dav@northeastern.edu>
Date:   Sun Oct 3 20:09:33 2021 -0400

    Let BCP 47 tag "mo" fall back to OT tag 'ROM '

 src/gen-tag-table.py   |  5 ++++-
 src/hb-ot-tag-table.hh | 13 +++++++++++--
 2 files changed, 15 insertions(+), 3 deletions(-)

commit a184c5f8518ab92b95947f23848ddde677e8cac1
Author: David Corbett <corbett.dav@northeastern.edu>
Date:   Sun Jan 30 13:28:23 2022 -0500

    Don’t always inherit from macrolanguages
    
    If an OpenType tag maps to a BCP 47 macrolanguage, that is presumably to
    support the use of the macrolanguage as a vague stand-in for one of its
    individual languages. For example, "ar" and "zh" are often used for
    "arb" and "cmn". When the OpenType tag maps to a macrolanguage and some
    but not all of its individual languages, that indicates that the
    OpenType tag only corresponds to the listed individual languages (which
    may be referred to using the macrolanguage subtag) but not the missing
    individual languages. In particular, INUK (Nunavik Inuktitut) is mapped
    to "ike" (Eastern Canadian Inuktitut) and "iu" (Inuktitut) but not to
    "ikt" (Inuinnaqtun), so "ikt" should not inherit the INUK mapping from
    its macrolanguage "iu".

 src/gen-tag-table.py   | 35 +++++++++++++++++++++++++++++++----
 src/hb-ot-tag-table.hh | 12 ++----------
 2 files changed, 33 insertions(+), 14 deletions(-)

commit 0b1bf89cc2ee6a8782c007e2b7362a4485be249a
Author: David Corbett <corbett.dav@northeastern.edu>
Date:   Fri Jan 28 22:27:51 2022 -0500

    Replace “[family]” with “[collection]”
    
    Not all language collections are language families.

 src/gen-tag-table.py   |  4 ++--
 src/hb-ot-tag-table.hh | 58 +++++++++++++++++++++++++-------------------------
 2 files changed, 31 insertions(+), 31 deletions(-)

commit 0e31595e0d2e214262c4cf0d4136215bc4c89a0a
Author: David Corbett <corbett.dav@northeastern.edu>
Date:   Fri Jan 28 22:26:38 2022 -0500

    Infer tag mappings for unregistered macrolanguages
    
    Every macrolanguage not mentioned in the OT language system tag registry
    is mapped to every tag of its individual languages, if those have
    registered tags.

 src/gen-tag-table.py   | 34 +++++++++++++++++++---------------
 src/hb-ot-tag-table.hh |  9 +++++++++
 2 files changed, 28 insertions(+), 15 deletions(-)

commit 5a6545940ac0ed48bc8872424269e598388b7996
Author: David Corbett <corbett.dav@northeastern.edu>
Date:   Fri Jan 28 21:29:43 2022 -0500

    Add the language system tag INUK

 src/hb-ot-tag-table.hh | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

commit bc899650c7976df7bc62ed55da5268f1d10b9a43
Author: Garret Rieger <grieger@google.com>
Date:   Fri Jan 28 13:54:10 2022 -0800

    [subset] Fix for issue #3397.
    
    cur_intersected_glyphs gets modified during recursion leading to incorrect filtering of sub tables in some cases. So don't use cur_intersected_glyphs. Instead just add an additional entry onto the parent_active_glyphs () stack.
    
    Additionaly expands NotoNastaliqUrdu tests to include coverage of the issue from #3397.

 src/hb-ot-layout-gsubgpos.hh                       |  59 +++++++++++++--------
 src/hb-ot-layout.cc                                |   6 +--
 .../NotoNastaliqUrdu-Bold.default.633,6D2.ttf      | Bin 0 -> 14048 bytes
 .../NotoNastaliqUrdu-Bold.retain-gids.633,6D2.ttf  | Bin 0 -> 19948 bytes
 ...ular.default.627,644,623,62D,644,627,645,2E.ttf | Bin 0 -> 17564 bytes
 ...astaliqUrdu-Regular.default.627,644,62D,628.ttf | Bin 0 -> 24564 bytes
 .../NotoNastaliqUrdu-Regular.default.627,644.ttf   | Bin 0 -> 7776 bytes
 ...-Regular.default.633,645,627,621,20,644,627.ttf | Bin 0 -> 23232 bytes
 .../NotoNastaliqUrdu-Regular.default.633,6D2.ttf   | Bin 0 -> 14296 bytes
 ...otoNastaliqUrdu-Regular.default.63A,64A,631.ttf | Bin 0 -> 26152 bytes
 ...iqUrdu-Regular.default.retain-all-codepoint.ttf | Bin 0 -> 542388 bytes
 ....retain-gids.627,644,623,62D,644,627,645,2E.ttf | Bin 0 -> 24224 bytes
 ...liqUrdu-Regular.retain-gids.627,644,62D,628.ttf | Bin 0 -> 30464 bytes
 ...otoNastaliqUrdu-Regular.retain-gids.627,644.ttf | Bin 0 -> 13380 bytes
 ...ular.retain-gids.633,645,627,621,20,644,627.ttf | Bin 0 -> 28888 bytes
 ...otoNastaliqUrdu-Regular.retain-gids.633,6D2.ttf | Bin 0 -> 20140 bytes
 ...astaliqUrdu-Regular.retain-gids.63A,64A,631.ttf | Bin 0 -> 32012 bytes
 ...du-Regular.retain-gids.retain-all-codepoint.ttf | Bin 0 -> 542424 bytes
 .../subset/data/fonts/NotoNastaliqUrdu-Regular.ttf | Bin 570552 -> 1060612 bytes
 .../data/tests/layout.notonastaliqurdu.tests       |   2 +
 20 files changed, 40 insertions(+), 27 deletions(-)

commit f3c1f4f0dae03bfd4521b3b8965891d45c49d02f
Author: Garret Rieger <grieger@google.com>
Date:   Fri Jan 28 11:50:22 2022 -0800

    [subset] convert active_glyphs_stack to be a vector of hb_set_t instead of hb_set_t*.

 src/hb-ot-layout-gsubgpos.hh | 63 ++++++++++++++++++++++----------------------
 1 file changed, 32 insertions(+), 31 deletions(-)

commit 24650624c812368e3900e276aaca2dc94b737af8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 28 13:53:21 2022 -0700

    [font] Fix build with no-var configs

 src/hb-font.cc | 2 ++
 1 file changed, 2 insertions(+)

commit 91b779e23cbaea5d9e3176f3a2c05b8ec10c89fb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 28 13:52:15 2022 -0700

    Avoid redefinition of HB_NO_SETLOCALE in certain configs

 src/hb-common.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit fa29006bfa3d5f84182b3a1c259ef4a3634da6b7
Author: Khaled Hosny <khaled@aliftype.com>
Date:   Thu Jan 27 01:57:45 2022 +0200

    [doc] Fix generation of hb_glyph_flags_t docs
    
    GTK-Doc does not like the empty lines here, and interprets everything
    after the first empty line as the description of the enum itself not a
    specific member and the generated text makes no sense.
    
    Removing the empty lines makes the text harder to read (both in source
    and HTML), but at least it is correctly organized.

 src/hb-buffer.h | 11 -----------
 1 file changed, 11 deletions(-)

commit e9cc5f6cdb3e29f2e33e0f8a08cf821ebd654a8d
Merge: bad5c9456 540af548d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 26 12:23:29 2022 -0800

    Merge pull request #3297 from harfbuzz/unsafe-to-concat
    
    Implement UNSAFE_TO_CONCAT flag

commit 540af548dc3926c4b9db059c9b20297df0802671
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jan 25 09:10:56 2022 -0700

    [unsafe-to-concat] Clarify documentation as per feedback
    
    Fixes https://github.com/harfbuzz/harfbuzz/pull/3297#discussion_r754395825

 src/hb-buffer.h | 18 +++++++++++++++---
 1 file changed, 15 insertions(+), 3 deletions(-)

commit bad5c94562fa07c4c10f8b3663ca29cc5210c13c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Jan 23 10:53:19 2022 -0700

    [test] Remove HB_UNUSED

 src/test-serialize.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 6c09a8b5b0cc3ecef19f1c5a031481d831374b5d
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Jan 23 10:52:13 2022 -0700

    [test-serialize] Assert len

 src/test-serialize.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 76c6f4164f133e056bd75378a4a2e912d153550e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Jan 23 10:43:37 2022 -0700

    [test] Add test-serialize

 src/Makefile.am       |  5 +++++
 src/meson.build       |  1 +
 src/test-serialize.cc | 51 +++++++++++++++++++++++++++++++++++++++++++++++++++
 3 files changed, 57 insertions(+)

commit 332460649268844bf93e147cc0b86a82c449a980
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jan 22 15:46:13 2022 -0700

    [buffer] Oops

 src/hb-buffer.hh | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

commit 20031ddbb814d46f8c988242d2ee0bd9b198dbe2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jan 22 11:41:30 2022 -0700

    [unsafe-to-concat] Mark in all other shapers
    
    unsafe_to_break() implies unsafe-to-concat; but setting the flag
    manually wasn't.

 src/hb-coretext.cc    | 3 ++-
 src/hb-directwrite.cc | 3 ++-
 src/hb-graphite2.cc   | 3 ++-
 src/hb-uniscribe.cc   | 3 ++-
 4 files changed, 8 insertions(+), 4 deletions(-)

commit 6e345f709d4888ab10ed22afffb6661d695e052f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jan 22 11:40:37 2022 -0700

    Cosmetic

 src/hb-buffer.hh | 16 ++++++++--------
 src/hb-kern.hh   |  2 +-
 2 files changed, 9 insertions(+), 9 deletions(-)

commit 374a6f186d7094370ffd6aed80688203c8f5a067
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jan 22 11:29:00 2022 -0700

    [fallback-shape] Add buffer trace log

 src/hb-kern.hh              |  5 +++++
 src/hb-ot-shape-fallback.cc | 10 ++++++++++
 2 files changed, 15 insertions(+)

commit bcdfedbc09c308965239c4b7a750a9cc20618542
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jan 22 11:19:05 2022 -0700

    [unsafe-to-concat] Mark as unsafe in kern machine
    
    Fixes that last test. Yay!

 src/hb-aat-layout-kerx-table.hh | 1 -
 src/hb-kern.hh                  | 2 +-
 2 files changed, 1 insertion(+), 2 deletions(-)

commit 14d43d12359ba14e4bb95c24903be70808f66738
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jan 22 10:46:18 2022 -0700

    [unsafe-to-concat] Adjust end conditions

 src/hb-buffer.hh | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

commit 8663eda4fde11d360cca15936e9d2ae07c357958
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jan 22 10:35:05 2022 -0700

    [unsafe-to-concat] More annotations for MarkMarkPos
    
    Failures down to one:
    
    265/401 harfbuzz:shaping+aots / lookupflag_ignore_attach         FAIL

 src/hb-ot-layout-gpos-table.hh | 13 +++++++++++--
 1 file changed, 11 insertions(+), 2 deletions(-)

commit 6a7d6d4b64dd0eff7d0e7191ad30268a2502db5f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jan 22 10:33:35 2022 -0700

    [unsafe-to-concat] More annotations for MarkLigaturePos

 src/hb-ot-layout-gpos-table.hh | 12 ++++++++++--
 1 file changed, 10 insertions(+), 2 deletions(-)

commit a575992057bcfab2ee3a720ad321c907cf20ff22
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jan 22 10:30:39 2022 -0700

    [unsafe-to-concat] Mark LigatureSubst
    
    Failures down to two:
    
    209/401 harfbuzz:shaping+aots / gpos6                            FAIL             0.06s   exit status 1
    265/401 harfbuzz:shaping+aots / lookupflag_ignore_attach         FAIL             0.06s   exit status 1

 src/hb-ot-layout-gsub-table.hh | 3 +++
 1 file changed, 3 insertions(+)

commit b443898cce2251ca2aaf332c13886577ab8db416
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jan 22 10:24:59 2022 -0700

    [unsafe-to-concat] Adjust MarkBasePos
    
    A couple more aots tests down. Four failing:
    
    209/401 harfbuzz:shaping+aots / gpos6                            FAIL             0.06s   exit status 1
    261/401 harfbuzz:shaping+aots / gsub4_1_multiple_ligatures       FAIL             0.07s   exit status 1
    265/401 harfbuzz:shaping+aots / lookupflag_ignore_attach         FAIL             0.07s   exit status 1
    267/401 harfbuzz:shaping+aots / lookupflag_ignore_combination    FAIL             0.07s   exit status 1

 src/hb-ot-layout-gpos-table.hh | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

commit 95d052a791262ebccbfeb794b992525ba2cc0ffc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jan 22 10:16:23 2022 -0700

    [unsafe-to-concat] Adjust GPOS lookbacks
    
    Fixes Cursive aots test, fails a couple new aots ones.

 src/hb-ot-layout-gpos-table.hh | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

commit 909e34f68a969275bc9b14c63e03d5d131823d91
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Jan 22 09:44:13 2022 -0700

    [unsafe-to-concat] Adjust Arabic-joining start boundary condition more

 src/hb-ot-shape-complex-arabic.cc                        |  14 ++++++++++++--
 test/shape/data/in-house/Makefile.sources                |   1 +
 .../fonts/34da9aab7bee86c4dfc3b85e423435822fdf4b62.ttf   | Bin 0 -> 1904 bytes
 test/shape/data/in-house/meson.build                     |   1 +
 test/shape/data/in-house/tests/unsafe-to-concat.tests    |   1 +
 5 files changed, 15 insertions(+), 2 deletions(-)

commit 11bdd7a020d3e99c0ff43f34cf1724a95713b463
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 21 18:59:06 2022 -0700

    [unsafe-to-concat] Adjust CursivePos
    
    Doesn't fix the test yet.

 src/hb-ot-layout-gpos-table.hh | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

commit ea1b32c8c198da4475941f459b16dc6d7e28148a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 21 18:58:33 2022 -0700

    [unsafe-to-concat] Adjust "interior"ness of "from_out_buffer"

 src/hb-buffer.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 4f04baef17bf5b150c1594f6e80604974e6e95e4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 21 18:26:54 2022 -0700

    [unsafe-to-concat] Further adjust Arabic joining logic at boundary

 src/hb-ot-shape-complex-arabic.cc | 7 +++++++
 1 file changed, 7 insertions(+)

commit 235c3a129581e96701fe055341e56699766df5fa
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 21 15:17:40 2022 -0700

    [unsafe-to-concat] Adjust Arabic joining logic
    
    Test failures done one more. Fixed the mongolian-variation-selector
    test.  Another test case:
    
    $ util/hb-shape NotoSansArabic-Regular.ttf -u 628,200c,628 --show-flags --verify

 src/hb-ot-shape-complex-arabic.cc | 4 ++++
 1 file changed, 4 insertions(+)

commit 48c5f26199808f40251cdaef7494456e9f23acb9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 21 12:18:50 2022 -0700

    [unsafe-to-concat] Fix PairPos2 logic
    
    Test failures down from 8 to 6:
    
    113/400 harfbuzz:shaping+in-house / mongolian-variation-selector FAIL             0.06s   exit status 1
    203/400 harfbuzz:shaping+aots / gpos3                            FAIL             0.06s   exit status 1
    204/400 harfbuzz:shaping+aots / gpos4_lookupflag                 FAIL             0.06s   exit status 1
    260/400 harfbuzz:shaping+aots / gsub4_1_multiple_ligatures       FAIL             0.06s   exit status 1
    264/400 harfbuzz:shaping+aots / lookupflag_ignore_attach         FAIL             0.06s   exit status 1
    266/400 harfbuzz:shaping+aots / lookupflag_ignore_combination    FAIL             0.06s   exit status 1

 src/hb-ot-layout-gpos-table.hh | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

commit c0058892bec52e4f0346b1139ebb206c03e094e2
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 20 15:51:04 2022 -0700

    [unsafe-to-concat] Mark entire buffer unsafe-to-concat if kerx format2

 src/hb-aat-layout-kerx-table.hh |  1 +
 src/hb-buffer.hh                | 21 ++++++++++++++-------
 2 files changed, 15 insertions(+), 7 deletions(-)

commit 60006d368770982c6a0d3bf06eb937773343cf5b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 20 15:29:28 2022 -0700

    [gsubgpos] Adjust chaining unsafe-to-concat application
    
    Fixes three tests.

 src/hb-ot-layout-gsubgpos.hh | 46 ++++++++++++++++++++++++--------------------
 1 file changed, 25 insertions(+), 21 deletions(-)

commit d98a0fc88e8bcf7993c92425212cd6c57a632a01
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Dec 4 20:43:27 2021 -0800

    [buffer] Consolidate glyph-flags implementation

 src/hb-buffer.cc | 25 -------------------
 src/hb-buffer.hh | 76 +++++++++++++++++++++++++++++++++++++++++++++-----------
 2 files changed, 62 insertions(+), 39 deletions(-)

commit f91ce56e08ed9acdfaf5dfe994d950195dd10881
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Dec 4 20:07:05 2021 -0800

    [buffer] Add default cluster value in find_min_cluster

 src/hb-buffer.cc | 6 ++----
 src/hb-buffer.hh | 2 +-
 2 files changed, 3 insertions(+), 5 deletions(-)

commit 56d081955c768a4ed55354fe57577cb10706fb81
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Dec 4 19:59:55 2021 -0800

    [buffer] Rename _unsafe_to_break_set_mask to _infos_set_glyph_flags

 src/hb-buffer.cc |  6 +++---
 src/hb-buffer.hh | 27 +++++++++++++--------------
 2 files changed, 16 insertions(+), 17 deletions(-)

commit 78481b32c0a14f0ee1c4baec4d5208b385be0b2e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sun Nov 21 16:50:34 2021 -0700

    [gsubgpos] Combine input/backtrack/lookahead unsafe-to-concat
    
    I feel like this is correct logic. Still have to prove.
    
    Errors unchanged at 10.

 src/hb-ot-layout-gpos-table.hh |  2 +-
 src/hb-ot-layout-gsub-table.hh | 15 ++++---
 src/hb-ot-layout-gsubgpos.hh   | 93 +++++++++++++++++++++++-------------------
 3 files changed, 62 insertions(+), 48 deletions(-)

commit 596bc7e939d927b4b211cdd847fbb1208789b999
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 20 12:02:47 2021 -0700

    [unsafe-to-concat] Add to GPOS kerning

 src/hb-ot-layout-gpos-table.hh | 3 +++
 1 file changed, 3 insertions(+)

commit e1cbd4539f392034899353f55daffa32e6d62c87
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Nov 20 11:46:48 2021 -0700

    [unsafe-to-concat] Add annotations to GPOS and kern
    
    Failures from 13 to 14.

 src/hb-kern.hh                 |  4 +++-
 src/hb-ot-layout-gpos-table.hh | 43 ++++++++++++++++++++++++++++++++++++------
 2 files changed, 40 insertions(+), 7 deletions(-)

commit 36b1561715737ff6608bf2eb6c21b64348abb226
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Nov 19 14:10:34 2021 -0700

    Implement hb-shape --verify unsafe-to-concat flag
    
    15 tests failing. Those look like legit places that unsafe-to-concat
    needs more implementation.

 util/shape-options.hh | 198 +++++++++++++++++++++++++++++++++++++++++++++++---
 1 file changed, 189 insertions(+), 9 deletions(-)

commit 3122c2cdc45a964efedad8953a2df67205c3e3a8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat Dec 4 19:50:33 2021 -0800

    [buffer] Add HB_GLYPH_FLAG_UNSAFE_TO_CONCAT
    
    Fixes https://github.com/harfbuzz/harfbuzz/issues/1463

 src/hb-buffer.cc             | 10 +++---
 src/hb-buffer.h              | 76 ++++++++++++++++++++++++++++++++++++--------
 src/hb-buffer.hh             | 33 +++++++++++--------
 src/hb-ot-layout-gsubgpos.hh | 39 ++++++++++++++++++++---
 src/hb-ot-shape.cc           |  8 ++---
 5 files changed, 124 insertions(+), 42 deletions(-)

commit a8b7f1880412c7f0c9ecdada0a4935011816c7dc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 21 07:38:33 2022 -0700

    [cff] Initialize accelerator members

 src/hb-ot-cff1-table.hh | 24 ++++++++++++------------
 src/hb-ot-cff2-table.hh | 16 ++++++++--------
 2 files changed, 20 insertions(+), 20 deletions(-)

commit cce37a6f10e0c7b06b5ead1223e92c85d88242c0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 21 07:31:21 2022 -0700

    [gpos] Fix conditional

 src/hb-ot-layout-gpos-table.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 773cf4fdd30cf9d4b8a7139ce2992156dc86bc00
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri Jan 21 07:30:09 2022 -0700

    [post] Initialize variables

 src/hb-ot-post-table.hh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit cab943a015b1a3d4cd72f0c5dc4ff79e0aefa06f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 20 14:32:30 2022 -0700

    One more fix

 test/shape/data/in-house/tests/macos.tests | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 070e30e6daba74fe62ea486dc97cd01a79f90541
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 20 14:31:31 2022 -0700

    Fix failing Mac test for previous commit

 test/shape/data/in-house/tests/macos.tests | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 84aa1a836c1440e862f58f0d5a23363825b5ac66
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 20 13:18:19 2022 -0800

    [PairPos] Split GPOS kerning to both sides (#3235)

 src/hb-ot-layout-gpos-table.hh                     | 66 +++++++++++++++++++++-
 test/shape/data/aots/Makefile.sources              |  3 -
 test/shape/data/aots/tests/gpos2_2.tests           |  2 +-
 .../data/in-house/tests/positioning-features.tests |  2 +-
 4 files changed, 66 insertions(+), 7 deletions(-)

commit ae9fc7f53335a42fe109ced01238fdaf2fc49b90
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 20 12:37:21 2022 -0700

    Clean accelerators a bit more

 src/hb-ot-color-colr-table.hh  | 12 ++++++------
 src/hb-ot-layout-gdef-table.hh | 10 +++++-----
 src/hb-ot-name-table.hh        |  2 --
 src/hb-ot-post-table.hh        |  3 ---
 src/hb-subset-plan.cc          |  4 +---
 5 files changed, 12 insertions(+), 19 deletions(-)

commit 0ae66593987c54e2d8a03b2c2c49c76d0ba1a4bb
Merge: 112cb9fe6 ac1bb3e39
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 20 11:28:59 2022 -0800

    Merge pull request #3392 from harfbuzz/auto-accelerators
    
    Auto accelerators

commit ac1bb3e39e4c0be675bd0f8a230bc75b57d22e98
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jan 20 11:47:17 2022 -0700

    [machinery] Move accelerators to constructor/destructor

 src/hb-machinery.hh              |  6 +++---
 src/hb-ot-cff1-table.hh          | 10 ++++++----
 src/hb-ot-cff2-table.hh          | 43 +++++++++++++++++++++++++---------------
 src/hb-ot-cmap-table.hh          | 17 ++++++++--------
 src/hb-ot-color-cbdt-table.hh    | 14 +++++++------
 src/hb-ot-color-sbix-table.hh    |  9 ++++++---
 src/hb-ot-color-svg-table.hh     |  8 +++++---
 src/hb-ot-glyf-table.hh          | 15 +++++++-------
 src/hb-ot-hmtx-table.hh          | 20 +++++++++----------
 src/hb-ot-layout-gdef-table.hh   |  9 +++++----
 src/hb-ot-layout-gpos-table.hh   |  4 +++-
 src/hb-ot-layout-gsub-table.hh   |  4 +++-
 src/hb-ot-layout-gsubgpos.hh     |  5 ++---
 src/hb-ot-meta-table.hh          |  8 +++++---
 src/hb-ot-name-table.hh          |  9 +++++----
 src/hb-ot-post-table-v2subset.hh |  7 ++-----
 src/hb-ot-post-table.hh          | 10 +++++++---
 src/hb-ot-var-gvar-table.hh      |  8 +++++---
 src/hb-subset-cff2.cc            |  8 ++------
 src/hb-subset-plan.cc            | 22 ++++----------------
 20 files changed, 123 insertions(+), 113 deletions(-)

commit 112cb9fe6927600018c61cd92577e01dbd8ed601
Author: Garret Rieger <grieger@google.com>
Date:   Wed Jan 19 15:31:35 2022 -0800

    [repacker] Fix missing initilization of obj in vertex_t.

 src/hb-repacker.hh | 23 +++++------------------
 1 file changed, 5 insertions(+), 18 deletions(-)

commit e062376ef1ce0e8e303eefd3bf449c20ba1f3607
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 19 17:09:34 2022 -0700

    [machinery] Make accelerator lazy-loader call Xinit/Xfini
    
    Instead of init/fini. To isolate those functions. To be turned into
    constructor/destructors, ideally one per commit (after some SFINAE
    foo.)

 src/hb-machinery.hh              |  6 +++---
 src/hb-ot-cff1-table.hh          |  4 ++--
 src/hb-ot-cff2-table.hh          | 28 ++++++++++++++--------------
 src/hb-ot-cmap-table.hh          | 14 +++++++-------
 src/hb-ot-color-cbdt-table.hh    |  4 ++--
 src/hb-ot-color-sbix-table.hh    |  4 ++--
 src/hb-ot-color-svg-table.hh     |  4 ++--
 src/hb-ot-glyf-table.hh          |  8 ++++----
 src/hb-ot-hmtx-table.hh          |  8 ++++----
 src/hb-ot-layout-gdef-table.hh   |  4 ++--
 src/hb-ot-layout-gsubgpos.hh     |  4 ++--
 src/hb-ot-meta-table.hh          |  4 ++--
 src/hb-ot-name-table.hh          |  4 ++--
 src/hb-ot-post-table-v2subset.hh |  4 ++--
 src/hb-ot-post-table.hh          |  4 ++--
 src/hb-ot-var-gvar-table.hh      |  4 ++--
 src/hb-subset-cff2.cc            |  4 ++--
 src/hb-subset-plan.cc            | 16 ++++++++--------
 18 files changed, 64 insertions(+), 64 deletions(-)

commit 1522015bb2d140f199359c4e7cfcf342b93894a7
Author: Khaled Hosny <khaled@aliftype.com>
Date:   Wed Jan 19 23:13:50 2022 +0200

    [test] Add --single-par to more places in hb-aots-tester [ci skip]

 test/shape/data/aots/hb-aots-tester.cpp | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 2d12fc90a4b4d5b5ba847115c8ef76b16ec495ef
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 19 14:01:20 2022 -0700

    [ms-feature-ranges] Pass reference to cmp function

 src/hb-ms-feature-ranges.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit ac109c9353292bfa474f57efdb43f9e0f2f735f6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 19 12:11:58 2022 -0700

    [ms-feature-ranges] Inline code in header file
    
    Fixes https://github.com/harfbuzz/harfbuzz/issues/3387

 src/Makefile.sources        |   1 -
 src/harfbuzz.cc             |   1 -
 src/hb-ms-feature-ranges.cc | 177 --------------------------------------------
 src/hb-ms-feature-ranges.hh | 141 ++++++++++++++++++++++++++++++++++-
 src/meson.build             |   1 -
 5 files changed, 137 insertions(+), 184 deletions(-)

commit cfa00238e40cc3c8d1aac557539fd746bc70124b
Merge: 7e160dc34 376738d41
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 19 11:10:22 2022 -0800

    Merge pull request #3386 from harfbuzz/unify-sorted-vector
    
    Unify sorted vector

commit 376738d41104dc10d483c8eb135d1befd5b18855
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 19 11:46:21 2022 -0700

    [coretext] Fix lsearch

 src/hb-coretext.cc | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 106388e7665984b545b2b47b0fac63ab2484a4f3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 19 11:38:37 2022 -0700

    [vector] Merge sorted-vector into vector
    
    Was easier than I thought!
    
    Let's see what the bot gods think...

 src/hb-vector.hh | 58 +++++++++++---------------------------------------------
 1 file changed, 11 insertions(+), 47 deletions(-)

commit 294d50ff353f77be2b2f0a560a2a876e4a80d094
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 19 11:32:14 2022 -0700

    [vector] Add sorted template argument

 src/hb-vector.hh | 24 ++++++++++++++++++++++--
 1 file changed, 22 insertions(+), 2 deletions(-)

commit cd9799784cc6deb8829a3c54a9dee654379cc03e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 19 11:14:25 2022 -0700

    [vector] Remove old find() method

 src/hb-algs.hh   | 12 +++++++++---
 src/hb-object.hh |  6 +++---
 src/hb-vector.hh | 17 -----------------
 3 files changed, 12 insertions(+), 23 deletions(-)

commit 849e40b4db814bc6fe5defa5b802cc534aab209a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 19 11:06:33 2022 -0700

    [ms-feature-ranges] Use preferred vector search API

 src/hb-ms-feature-ranges.cc | 2 +-
 src/hb-ms-feature-ranges.hh | 4 ++--
 2 files changed, 3 insertions(+), 3 deletions(-)

commit 7e160dc347a77dc36a9bd9df6cb686eff8252f7c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 19 09:26:53 2022 -0700

    [gpos] Fix unsafe-to-break of mark-attachment
    
    This was undetected because most of the time marks were in same
    cluster of their base already.
    
    Fixes https://github.com/harfbuzz/harfbuzz/issues/3093

 src/hb-ot-layout-gpos-table.hh                | 2 +-
 test/shape/data/aots/tests/gpos4_simple.tests | 2 +-
 test/shape/data/aots/tests/gpos5.tests        | 2 +-
 3 files changed, 3 insertions(+), 3 deletions(-)

commit c8195dbc01f0b36f39ac6f087ee6891b09e31594
Merge: 17cd4457b 282642311
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed Jan 19 06:56:05 2022 -0800

    Merge pull request #3365 from harfbuzz/gdef-fix
    
    GDEF fix

commit 17cd4457b7e456f3c99582a71c92b47ad572cd2f
Author: Hugo Beauzée-Luyssen <hugo@beauzee.fr>
Date:   Wed Jan 19 11:53:02 2022 +0100

    meson: Enable big objects support when building for windows
    
    Fix cross compilation when targetting win64

 meson.build | 6 ++++++
 1 file changed, 6 insertions(+)

commit 282642311f1710d1b4ea223de21090211de57765
Author: Simon Cozens <simon@simon-cozens.org>
Date:   Wed Jul 8 14:39:31 2020 +0100

    Test for #2140

 test/shape/data/in-house/Makefile.sources                |   1 +
 .../in-house/fonts/FallbackPlus-Javanese-no-GDEF.otf     | Bin 0 -> 4776 bytes
 test/shape/data/in-house/meson.build                     |   1 +
 test/shape/data/in-house/tests/glyph-props-no-gdef.tests |   1 +
 4 files changed, 3 insertions(+)

commit fc5354c5e5e16105b46b7716065a9f1afac72e7b
Author: Simon Cozens <simon@simon-cozens.org>
Date:   Wed Jul 8 14:16:00 2020 +0100

    Add test for #2516

 test/shape/data/in-house/Makefile.sources              |   1 +
 .../data/in-house/fonts/NotoNastaliqUrdu-Regular.ttf   | Bin 0 -> 457312 bytes
 test/shape/data/in-house/meson.build                   |   1 +
 .../in-house/tests/nested-mark-filtering-sets.tests    |   4 ++++
 4 files changed, 6 insertions(+)

commit 94ba4d5a440c599694b0db73ab8e9344d83cb9ef
Author: Garret Rieger <grieger@google.com>
Date:   Tue Jan 18 16:35:30 2022 -0800

    [subset] Fix bound check when setting overlap bit.
    
    length() shouldn't be used again as the end of instruction offset is already included in flags_offset.

 src/hb-ot-glyf-table.hh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 10a20be397e47522f8d20f6247278a0770c5bf66
Merge: daab4bf63 fe783ac09
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jan 18 13:46:35 2022 -0800

    Merge pull request #3381 from harfbuzz/clean-vector-use
    
    Clean vector use

commit fe783ac091b94ff6d0c9060fde229594b4e635e1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jan 18 13:38:28 2022 -0700

    [cff] Remove op_str_t nop init/fini

 src/hb-cff-interp-common.hh | 3 ---
 src/hb-subset-cff-common.hh | 3 ---
 2 files changed, 6 deletions(-)

commit 8d24ac26623f5645783b8e36e39c9f5c635e0191
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jan 18 13:14:42 2022 -0700

    [cff] Remove init/fini from number_t

 src/hb-cff-interp-common.hh    | 7 +------
 src/hb-cff-interp-cs-common.hh | 9 +--------
 2 files changed, 2 insertions(+), 14 deletions(-)

commit 6ef83c2c31b4355f2eeee7d241e2c6bb52f6d6b3
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jan 18 13:08:34 2022 -0700

    [vector] Remove .fini_deep()

 src/hb-cff-interp-common.hh | 4 ++--
 src/hb-vector.hh            | 7 -------
 2 files changed, 2 insertions(+), 9 deletions(-)

commit daab4bf63a6ce1a519173aee5ddfbf17318cf2b8
Author: James Hilliard <james.hilliard1@gmail.com>
Date:   Mon Jan 17 18:28:39 2022 -0700

    [meson] add icu DEFS required for compilation
    
    In some cases we need to add additionl defs to build against icu if
    icu has certain options configured.
    
    ICU warns about this when building:
    
    *** WARNING: You must set the following flags before code compiled against this ICU will function properly:
    
        -DU_DISABLE_RENAMING=1
    
    We can fetch these flags from the icu pkgconfig and add them if
    required.
    
    This fixes symbol errors if ICU is built without renaming.

 meson.build | 7 +++++++
 1 file changed, 7 insertions(+)

commit 4eb6e6ea16e0b4f6ac7271929849c3e8f52c8cc6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jan 18 12:07:05 2022 -0700

    [cff] Remove some more fini_deep()

 src/hb-ot-cff1-table.hh | 4 ++--
 src/hb-ot-cff2-table.hh | 4 ++--
 2 files changed, 4 insertions(+), 4 deletions(-)

commit 29f60d1eaad663b8519930145e7f4c4d88429dce
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jan 18 11:58:16 2022 -0700

    [cff] Remove init/fini from blend_arg_t

 src/hb-cff2-interp-cs.hh | 12 ------------
 1 file changed, 12 deletions(-)

commit 213e3f09b11cd6fb67295ad758beffd490d62ed6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jan 18 09:39:46 2022 -0700

    [vector] Add TODO Emplace?

 src/hb-vector.hh | 1 +
 1 file changed, 1 insertion(+)

commit f1dc8b087cf08970c6c96b0052ec46a10892cc66
Author: Garret Rieger <grieger@google.com>
Date:   Tue Jan 18 10:29:04 2022 -0800

    [subset-cff] Convert subr_closures_t to constructor/destructor instead of init/fini.

 src/hb-subset-cff-common.hh | 50 ++++++++++++---------------------------------
 1 file changed, 13 insertions(+), 37 deletions(-)

commit a48aa9850acf89a1ba36fa812195d6428f80b9a6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jan 18 09:32:58 2022 -0700

    [subset-cff] Remove another set of fini_deep

 src/hb-subset-cff-common.hh | 30 ++++--------------------------
 1 file changed, 4 insertions(+), 26 deletions(-)

commit 07474aa8c6f8a4d4bff92501e2e19143cfe8e91f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jan 18 09:29:43 2022 -0700

    [subset-cff1] Remove a constructor/destructor pair

 src/hb-subset-cff1.cc | 32 +++++---------------------------
 1 file changed, 5 insertions(+), 27 deletions(-)

commit a1e9a276eb2dee1c1b0503072a0e6bbefc1dd62f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jan 18 09:27:32 2022 -0700

    [subset-cff2] Drop an constructor/destructor pair

 src/hb-subset-cff2.cc | 33 ++++++---------------------------
 1 file changed, 6 insertions(+), 27 deletions(-)

commit 035f03346ddc673a3617822e45103d67a11cd62c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue Jan 18 09:26:30 2022 -0700

    [str_buff_vec_t] Remove unused fini method

