commit 93c455567fe3d92a7efe65bf0e9ac2af794e2c4f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 31 22:53:27 2019 -0700

    2.5.1

 NEWS             | 11 +++++++++++
 configure.ac     |  2 +-
 src/hb-version.h |  4 ++--
 3 files changed, 14 insertions(+), 3 deletions(-)

commit 10e3cb9246ab3d288af4effe484f4d8beb2243d6
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 31 22:56:37 2019 -0700

    [docs] Fix dist

 docs/Makefile.am | 1 +
 1 file changed, 1 insertion(+)

commit 619f5f1eb9e5e2a4f326f89c9e3e05b01f9c042f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 31 22:31:35 2019 -0700

    Fourth try at building VS bots
    
    Based on https://github.com/harfbuzz/harfbuzz/issues/1730#issuecomment-497151210

 src/hb-algs.hh | 16 +++++++++++-----
 1 file changed, 11 insertions(+), 5 deletions(-)

commit f387a09742bd8e4a7a8da6db954339609839a113
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 31 22:12:23 2019 -0700

    [ci] Disable VS 2013
    
    That one doesn't even understand constexpr.

 appveyor.yml | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

commit aba3888d933474a874d2f3ff02397b523846466c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 31 22:11:27 2019 -0700

    Third try at fixing VS build
    
    https://github.com/harfbuzz/harfbuzz/issues/1730

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

commit 8aaecbb5832568135f6149254ed9e17ac4310341
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 31 21:41:40 2019 -0700

    Second VS fix try
    
    https://github.com/harfbuzz/harfbuzz/issues/1730

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

commit 5a1b5c0a8b91a2291e7327e84acba2406a14414e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 31 21:08:39 2019 -0700

    Try fixing VS builds
    
    Hopefully fixes https://github.com/harfbuzz/harfbuzz/issues/1730

 src/hb-algs.hh | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

commit 66381fb73f21e8e3c1c14b196e64d1004be303c7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 31 20:20:43 2019 -0700

    [ci] Enable other versions of Visual Studio
    
    https://github.com/harfbuzz/harfbuzz/issues/1730

 appveyor.yml | 44 ++++++++++++++++++++++++--------------------
 1 file changed, 24 insertions(+), 20 deletions(-)

commit 92fde3dea282d308fad2b8e93cd638aa813c6f2a
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 31 20:16:25 2019 -0700

    Whitespace

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

commit 49879adbfc57c3173a25bbc55afc0796ee71b6da
Author: rsheeter <rsheeter@google.com>
Date:   Fri May 31 15:14:44 2019 -0700

    [subset] Correct calculation of max offset; fixes bug where loca would erroneously be short

 src/hb-ot-glyf-table.hh | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

commit 2ad4ba7bc04fbbd886a2da6fbc55a4e13468d878
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 31 15:48:54 2019 -0700

    [gsub] Minor

 src/hb-ot-layout-gsub-table.hh | 40 +++++++++++++++++++++-------------------
 1 file changed, 21 insertions(+), 19 deletions(-)

commit 2dbdec66a17af94fffc50949e4712465aada9a68
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 31 15:38:11 2019 -0700

    [gsub] Porting serialize to iterators

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

commit 1834cf86d40abfbb536db1edb366c90318ba49fc
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 31 14:39:32 2019 -0700

    [serialize] Pass offset to serialize_subset()

 src/hb-open-type.hh            | 14 +++++++++-----
 src/hb-ot-layout-common.hh     |  4 ++--
 src/hb-ot-layout-gdef-table.hh | 12 ++++++------
 src/hb-ot-layout-gsubgpos.hh   |  7 ++++---
 4 files changed, 21 insertions(+), 16 deletions(-)

commit 926044162472aeca8f5032b11b544d38be587110
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 31 14:34:34 2019 -0700

    [serialize] Pass offset to serialize_copy()

 src/hb-open-type.hh          | 12 ++++++++----
 src/hb-ot-layout-common.hh   |  4 ++--
 src/hb-ot-layout-gsubgpos.hh |  2 +-
 src/hb-ot-name-table.hh      |  2 +-
 4 files changed, 12 insertions(+), 8 deletions(-)

commit 87dd4bff1c42f1845fb3d11477e5de210121d48e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 30 11:26:17 2019 -0400

    [math] Rename HB_MATH_GLYPH_PART_FLAG_EXTENDER
    
    To HB_OT_MATH_GLYPH_PART_FLAG_EXTENDER.  Added a deprecated macro.
    
    Fixes https://github.com/harfbuzz/harfbuzz/issues/1734

 src/hb-ot-deprecated.h  |  4 ++++
 src/hb-ot-math-table.hh |  2 +-
 src/hb-ot-math.h        |  2 +-
 test/api/test-ot-math.c | 16 ++++++++--------
 4 files changed, 14 insertions(+), 10 deletions(-)

commit 88f9dab366491af144da316384991e74af443226
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Wed May 29 01:55:31 2019 +0430

    [ci] Clean up and add disabled bots of other msvc versions (#1733)

 appveyor.yml | 41 ++++++++++++++++++++++++++++++-----------
 1 file changed, 30 insertions(+), 11 deletions(-)

commit da9d43171ba4ae0a78c92e9de83498fd2f513c8b
Author: Bruce Mitchener <bruce.mitchener@gmail.com>
Date:   Tue May 28 21:50:17 2019 +0700

    Fix some typos.

 docs/usermanual-clusters.xml        | 4 ++--
 docs/usermanual-fonts-and-faces.xml | 2 +-
 src/hb-ot-math.h                    | 2 +-
 3 files changed, 4 insertions(+), 4 deletions(-)

commit 8a133718472d152fa1f69ec52862b019b71b371f
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Tue May 28 13:54:45 2019 +0430

    [test] minor, fix copyright
    
    nothing important, fixing a copy paste error inconsistency

 test/api/test-aat-layout.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 13316ac5d435f11c2c65fd2d762841a819afb639
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Tue May 28 13:48:39 2019 +0430

    [test] minor style improve

 test/subset/run-tests.py | 38 +++++++++++++++++++-------------------
 1 file changed, 19 insertions(+), 19 deletions(-)

commit d64fb9db520d77eb7bb40ceda4e20be5e602bf91
Author: David Corbett <corbett.dav@husky.neu.edu>
Date:   Sun May 26 11:05:54 2019 -0400

    [use] Allow U+1A60 TAI THAM SIGN SAKOT after vowel

 src/gen-use-table.py                               |   7 +-
 src/hb-ot-shape-complex-use-machine.hh             | 609 +++++++++++----------
 src/hb-ot-shape-complex-use-machine.rl             |  20 +-
 src/hb-ot-shape-complex-use-table.cc               |   4 +-
 src/hb-ot-shape-complex-use.cc                     |   3 +
 src/hb-ot-shape-complex-use.hh                     |   2 +
 .../3cc01fede4debd4b7794ccb1b16cdb9987ea7571.ttf   | Bin 0 -> 1144 bytes
 .../fd565cabd5208d345d0ed4fda7ae742917d846a5.ttf   | Bin 1056 -> 0 bytes
 .../shaping/data/in-house/tests/use-syllable.tests |   5 +-
 9 files changed, 351 insertions(+), 299 deletions(-)

commit 179570d4cae9aefcd91d540b8865a81d569b3358
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 27 13:08:07 2019 -0400

    [atomic] Fix warning, second time
    
    Fixes https://bugzilla.mozilla.org/show_bug.cgi?id=1554306

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

commit ad17a8bdd571c7b275f9735e3602a8068f12934f
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat May 25 16:33:21 2019 -0400

    [ucd] Update for latest packTab

 src/gen-ucd-table.py | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 771712b3ca97035ba5690e65bd7e63a852286159
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat May 25 15:58:45 2019 -0400

    [ucd] Update for recent packTab
    
    No need for separate youseedy package.

 src/gen-ucd-table.py | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

commit 52aa6c57c5a4b18807a1329549dface90b148f22
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sat May 25 22:55:06 2019 +0430

    [ci] minor

 .circleci/config.yml | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 9b75da4299adb5487519ddf96e99949b1dad2d5c
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sat May 25 22:46:10 2019 +0430

    [ci] minor

 .circleci/config.yml | 2 ++
 1 file changed, 2 insertions(+)

commit 9158cab3f9f9e1a4941c1dbf0aa71455ceb00da6
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sat May 25 22:33:02 2019 +0430

    [ci] Store dist-win result instead

 .circleci/config.yml | 11 +++++------
 1 file changed, 5 insertions(+), 6 deletions(-)

commit 85b68a42af541bc91f2851389ac09b012a6d3aa1
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat May 25 12:59:01 2019 -0400

    [atomic] Fix warnings
    
    https://bugzilla.mozilla.org/show_bug.cgi?id=1554306

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

commit 941c1b6d711b8528d0f5faa5655b09ea74f7dfb4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat May 25 12:52:16 2019 -0400

    [mingw] Update instructions
    
    https://github.com/harfbuzz/harfbuzz/issues/1728

 RELEASING.md | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 210f93c143d0fa2a7b293a6ffd138b3e01cab7c0
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat May 25 12:49:20 2019 -0400

    [mutex] Prefer pthread over windows
    
    https://github.com/harfbuzz/harfbuzz/issues/1728

 src/hb-mutex.hh | 22 +++++++++++-----------
 1 file changed, 11 insertions(+), 11 deletions(-)

commit a5d1b0bdaa0183e2bd310640f5867426096e0b18
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat May 25 12:45:40 2019 -0400

    Look for pthread even if win32
    
    https://github.com/harfbuzz/harfbuzz/issues/1728

 configure.ac | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

commit f3b132187fc734cbb3705b405361c8bad9a72582
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat May 25 12:42:38 2019 -0400

    [mingw] Some more tweaks
    
    It now survives ./config.status --recheck as well.
    
    https://github.com/harfbuzz/harfbuzz/issues/1728

 mingw-configure.sh | 37 ++++++++++++++++++-------------------
 mingw32.sh         |  2 +-
 mingw64.sh         |  2 +-
 3 files changed, 20 insertions(+), 21 deletions(-)

commit c41ed54b169c16fb9862e88ddf127ae68c1561e9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat May 25 12:35:09 2019 -0400

    [mingw] Add "make dist-win" to toplevel Makefile

 Makefile.am | 16 +++++++++++++---
 1 file changed, 13 insertions(+), 3 deletions(-)

commit a0a75a7c701932f4533b104eeb3c6087d01aa2ae
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat May 25 12:16:28 2019 -0400

    [mingw] More

 Makefile.am        |  8 +++++++-
 mingw-configure.sh | 29 +++++++++++++++++++++++++++++
 mingw32.sh         | 25 ++-----------------------
 mingw64.sh         | 25 ++-----------------------
 4 files changed, 40 insertions(+), 47 deletions(-)

commit 309a9d8ffb499f89738864acef596685ca495150
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sat May 25 20:40:03 2019 +0430

    [ci] Remove --without-icu now that we have it in ./mingw{32,64} scripts

 .circleci/config.yml | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit ccfe642c0cdc9fbc8280669e3e8b01dc5eb682d8
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat May 25 12:08:05 2019 -0400

    [mingw] Force off ICU
    
    If cross-compiled ICU is not available, we might end up finding the
    native ICU via icu-config.  That's distracting.

 mingw32.sh | 2 +-
 mingw64.sh | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

commit 0e6b7f7cd51d7376f21a422881cb4eb542360b0b
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Sat May 25 20:27:29 2019 +0430

    [ci] Build mingw on Fedora and store .exe outputs

 .circleci/config.yml | 16 ++++++++++++----
 1 file changed, 12 insertions(+), 4 deletions(-)

commit 7b716cbbe6de2902ca6b1f67024b3f8cdb41340c
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat May 25 11:37:23 2019 -0400

    [ming2] Update instructions
    
    Part of https://github.com/harfbuzz/harfbuzz/issues/1728
    
    Only left to write how to create a win32 bundle.

 README.mingw.md | 44 ++++++++++++++++++++++++++------------------
 RELEASING.md    | 54 ++++++------------------------------------------------
 2 files changed, 32 insertions(+), 66 deletions(-)

commit 77a1b6b7c3bd5490ffa5bb48a8b52d9c4c18e669
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat May 25 11:18:40 2019 -0400

    [mingw] Rename README.wine

 Makefile.am                       | 2 +-
 README.wine.md => README.mingw.md | 0
 2 files changed, 1 insertion(+), 1 deletion(-)

commit c68b4264880c0f99bcb579345e51ce54e799655b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat May 25 11:17:56 2019 -0400

    [mingw] Update for recent change

 README.wine.md | 2 +-
 RELEASING.md   | 4 ++--
 2 files changed, 3 insertions(+), 3 deletions(-)

commit 5cf2e648a67e1af20a23e010c86e8812a74ff7a4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Sat May 25 11:15:15 2019 -0400

    [mingw] Update for Fedora mingw installation location
    
    Also adds --with-uniscribe by default.
    
    Part of https://github.com/harfbuzz/harfbuzz/issues/1728

 mingw32.sh | 9 +++++----
 mingw64.sh | 9 +++++----
 2 files changed, 10 insertions(+), 8 deletions(-)

commit e7ed85de95d3ccdb674ec5a30ae66d53cea74b3a
Merge: f93a5e6a 97ba206b
Author: n8willis <n8willis@users.noreply.github.com>
Date:   Sat May 25 16:05:07 2019 +0100

    Merge pull request #1691 from n8willis/usermanual-shaping
    
    Usermanual: Add new chapters.

commit 97ba206bed341dc7c915a86531512b1e0617303d
Author: Nathan Willis <nwillis@glyphography.com>
Date:   Sat May 25 12:26:50 2019 +0100

    Usermanual; minor.

 ...usermanual-buffers-language-script-and-direction.xml |  2 +-
 docs/usermanual-opentype-features.xml                   | 17 ++++++++++-------
 2 files changed, 11 insertions(+), 8 deletions(-)

commit f93a5e6a7dad4fde2bf61c241bf32da678525c8b
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 24 17:02:38 2019 -0400

    [win] Add mingw-ldd.py
    
    Part of https://github.com/harfbuzz/harfbuzz/issues/1728

 mingw-ldd.py | 58 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 58 insertions(+)

commit 5fd3ece5237ac6a4ee95b2665b5e20102ed176bb
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 24 15:56:15 2019 -0400

    2.5.0

 Makefile.am      |  2 +-
 NEWS             | 14 ++++++++++++++
 configure.ac     |  2 +-
 src/hb-version.h |  4 ++--
 4 files changed, 18 insertions(+), 4 deletions(-)

commit 1da089179b9bd06f071f967d128819e85998b809
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 24 15:41:34 2019 -0400

    Put back Since: tags for hb_color_get_*

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

commit dd5ad6b6b5aed3db62bc03b89acf90c68795edb4
Author: Nathan Willis <nwillis@glyphography.com>
Date:   Fri May 24 20:30:22 2019 +0100

    Usermanual-buffers-chapter: trim out fallback-of-ufuncs talk and just mention that stuff exists if you care to go find it.

 docs/usermanual-buffers-language-script-and-direction.xml | 13 +++++++------
 1 file changed, 7 insertions(+), 6 deletions(-)

commit e1a5ce6aa661251e998df7b3612a1d5d39e28827
Author: Qunxin Liu <qxliu@google.com>
Date:   Fri May 24 10:58:52 2019 -0700

    Fix fuzzer crash testcase
    
    Add a check for stringOffSet(uint16) overflow,
    return early if overflow happens

 src/hb-ot-name-table.hh                                |   2 +-
 ...estcase-minimized-hb-subset-fuzzer-5077547978588160 | Bin 0 -> 339602 bytes
 ...estcase-minimized-hb-subset-fuzzer-5761434614497280 | Bin 0 -> 532 bytes
 3 files changed, 1 insertion(+), 1 deletion(-)

commit 240540ff9a463cf386ae5755471a5621b94290df
Author: Nathan Willis <nwillis@glyphography.com>
Date:   Fri May 24 20:13:35 2019 +0100

    Usermanual-buffers-chapter: explain ICU fallback for Ufuncs.

 docs/usermanual-buffers-language-script-and-direction.xml | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

commit d100ccad02b038719472b2cc733940ffb0374cd1
Author: David Corbett <corbett.dav@husky.neu.edu>
Date:   Sun May 19 10:01:20 2019 -0400

    [use] Allow multiple FMs in a cluster

 src/gen-use-table.py                   |  12 +-
 src/hb-ot-shape-complex-use-machine.hh | 567 ++++++++++++++++-----------------
 src/hb-ot-shape-complex-use-machine.rl |  14 +-
 src/hb-ot-shape-complex-use-table.cc   |  38 ++-
 src/hb-ot-shape-complex-use.hh         |  11 +-
 5 files changed, 315 insertions(+), 327 deletions(-)

commit 487879e013758aef2c7f824033a40cd56361d240
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 24 12:37:53 2019 -0400

    Don't compile in UCD if HB_NO_UCD defined

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

commit 1fffe51a295b6106a442bed8107d305c325bef05
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Fri May 24 10:52:09 2019 -0400

    [blob] Shuffle

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

commit 96de94768b08287325be8947255917502368c337
Merge: c96c6b28 1197bef2
Author: rsheeter <rsheeter@google.com>
Date:   Fri May 24 11:22:41 2019 -0700

    Merge pull request #1722 from googlefonts/glyf
    
    [subset] Use iterators in glyf/loca subsetting

commit 1197bef26c63ee896bea3fab5788635cb0fc9d18
Author: Rod Sheeter <rsheeter@google.com>
Date:   Fri May 24 10:52:49 2019 -0700

    [subset] Per code review, use hb_array to avoid duplicated type name

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

commit e66253283385aa67eb9c5ab627139a56f9ae5a71
Author: Rod Sheeter <rsheeter@google.com>
Date:   Fri May 24 10:39:56 2019 -0700

    [subset] Cppcheck complaints

 test/api/hb-test.h | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

commit 13b3cd307e7dedea3b419fb06d81a008e49ccff6
Author: Rod Sheeter <rsheeter@google.com>
Date:   Fri May 24 10:10:12 2019 -0700

    [subset] Address @behdad review feedback

 src/hb-ot-glyf-table.hh | 18 ++++++++----------
 1 file changed, 8 insertions(+), 10 deletions(-)

commit c96c6b287ff1d96da6a50a8cb3f641fe8705e5f7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 23 21:37:17 2019 -0400

    One more

 .circleci/config.yml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit b567d4ea14cc6ec0e8efc64a4993a9b0461adb20
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 23 21:36:42 2019 -0400

    Fix build after UCDN -> UCD

 CMakeLists.txt                       | 14 --------------
 configure.ac                         | 18 +-----------------
 docs/usermanual-install-harfbuzz.xml | 34 ++++++++--------------------------
 3 files changed, 9 insertions(+), 57 deletions(-)

commit 226ab06ec110f4cbd56b39ce0d05d349dfec35b9
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 23 20:39:04 2019 -0400

    [ucd] Add URL to dependencies

 src/gen-ucd-table.py | 3 +++
 1 file changed, 3 insertions(+)

commit 65392b734e38668b870b1ffcbfb4b42ec289ef58
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 22 16:21:21 2019 -0400

    [ucdn] Replace UCDN with a new UCD implementation
    
    UCDN was ~120kb of data.  New implementatoin is 69kb in default builds,
    and 49kb if built with HB_OPTIMIZE_SIZE or __OPTIMIZE_SIZE__.  The
    latter automatically enabled if built with -Os or -Oz.
    
    There's room to shave off another 10kb or 20kb.  That will follow later.
    
    Fixes https://github.com/harfbuzz/harfbuzz/issues/1652

 src/Makefile.am              |   11 -
 src/Makefile.sources         |    5 +-
 src/gen-ucd-table.py         |   11 +-
 src/hb-algs.hh               |    8 +
 src/hb-ot-layout.cc          |   76 +-
 src/hb-ucd-table.hh          | 5160 +++++++++++++++++++++++++++++++++++++
 src/hb-ucd.cc                |  209 ++
 src/hb-ucdn.cc               |  272 --
 src/hb-ucdn/COPYING          |   13 -
 src/hb-ucdn/Makefile.am      |   16 -
 src/hb-ucdn/Makefile.sources |    7 -
 src/hb-ucdn/README           |   40 -
 src/hb-ucdn/ucdn.c           |  361 ---
 src/hb-ucdn/ucdn.h           |  472 ----
 src/hb-ucdn/ucdn_db.h        | 5790 ------------------------------------------
 src/hb-unicode.cc            |    8 +-
 16 files changed, 5427 insertions(+), 7032 deletions(-)

commit 12c59f6c40401c8221facc5d0aed63f510a77dd7
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu May 23 13:33:21 2019 -0400

    [deprecated] Minor

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

commit 36dee9221f8de3a2a6a23f0548460aab4982b594
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 22 15:51:53 2019 -0400

    [gen-ucd] Rename

 src/Makefile.am                      | 1 +
 src/{gen-ucd.py => gen-ucd-table.py} | 0
 2 files changed, 1 insertion(+)

commit 831c213501fc38229755be7958b2952fe0cdff0e
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Wed May 22 15:46:19 2019 -0400

    [gen-ucd] Minor

 src/gen-ucd.py | 30 +++++++++++++++++++++++++++---
 1 file changed, 27 insertions(+), 3 deletions(-)

commit 15a9e32b566fbf6f4a2c6fd488d8cc3865234b17
Merge: 993d81b9 ff7fc6d4
Author: Ebrahim Byagowi <ebrahim@gnu.org>
Date:   Thu May 23 11:02:15 2019 +0430

    Merge pull request #1723 from googlefonts/drop_tables
    
    [subset] Add morx, mort, kern, and kernx to the default layout tables…

commit ff7fc6d488f37e3faaca4986cde35836f013b03f
Author: Garret Rieger <grieger@google.com>
Date:   Wed May 22 17:36:16 2019 -0700

    [subset] Add morx, mort, kern, and kernx to the default layout tables drop list.

 src/hb-subset-input.cc | 4 ++++
 src/hb-subset.cc       | 4 ++++
 2 files changed, 8 insertions(+)

commit 993d81b9c57f2e27d80d276953b0430821129425
Author: Qunxin Liu <qxliu@google.com>
Date:   Tue May 14 13:55:11 2019 -0700

    [subset] Add one ttf file with fvar/STAT tables to integration test
    Ignore gvar/MVAR/HVAR table
    add support for --nameIDs=* option

 src/hb-ot-cmap-table.hh                            |  27 +++++++++++++++++----
 src/hb-ot-stat-table.hh                            |   2 +-
 src/hb-subset-input.cc                             |   1 +
 src/hb-subset-plan.cc                              |   6 +----
 test/api/hb-subset-test.h                          |   2 +-
 .../Comfortaa-Regular-new.default.61,62,63.ttf     | Bin 0 -> 6492 bytes
 .../basics/Comfortaa-Regular-new.default.61,63.ttf | Bin 0 -> 6316 bytes
 .../basics/Comfortaa-Regular-new.default.61.ttf    | Bin 0 -> 6148 bytes
 .../basics/Comfortaa-Regular-new.default.62.ttf    | Bin 0 -> 6088 bytes
 .../basics/Comfortaa-Regular-new.default.63.ttf    | Bin 0 -> 6068 bytes
 ...Regular-new.drop-hints-retain-gids.61,62,63.ttf | Bin 0 -> 3284 bytes
 ...aa-Regular-new.drop-hints-retain-gids.61,63.ttf | Bin 0 -> 3164 bytes
 ...ortaa-Regular-new.drop-hints-retain-gids.61.ttf | Bin 0 -> 2868 bytes
 ...ortaa-Regular-new.drop-hints-retain-gids.62.ttf | Bin 0 -> 3020 bytes
 ...ortaa-Regular-new.drop-hints-retain-gids.63.ttf | Bin 0 -> 3024 bytes
 .../Comfortaa-Regular-new.drop-hints.61,62,63.ttf  | Bin 0 -> 1952 bytes
 .../Comfortaa-Regular-new.drop-hints.61,63.ttf     | Bin 0 -> 1832 bytes
 .../basics/Comfortaa-Regular-new.drop-hints.61.ttf | Bin 0 -> 1704 bytes
 .../basics/Comfortaa-Regular-new.drop-hints.62.ttf | Bin 0 -> 1688 bytes
 .../basics/Comfortaa-Regular-new.drop-hints.63.ttf | Bin 0 -> 1688 bytes
 .../Comfortaa-Regular-new.name-ids.61,62,63.ttf    | Bin 0 -> 6236 bytes
 .../Comfortaa-Regular-new.name-ids.61,63.ttf       | Bin 0 -> 6060 bytes
 .../basics/Comfortaa-Regular-new.name-ids.61.ttf   | Bin 0 -> 5892 bytes
 .../basics/Comfortaa-Regular-new.name-ids.62.ttf   | Bin 0 -> 5832 bytes
 .../basics/Comfortaa-Regular-new.name-ids.63.ttf   | Bin 0 -> 5812 bytes
 .../Comfortaa-Regular-new.retain-gids.61,62,63.ttf | Bin 0 -> 7824 bytes
 .../Comfortaa-Regular-new.retain-gids.61,63.ttf    | Bin 0 -> 7648 bytes
 .../Comfortaa-Regular-new.retain-gids.61.ttf       | Bin 0 -> 7312 bytes
 .../Comfortaa-Regular-new.retain-gids.62.ttf       | Bin 0 -> 7420 bytes
 .../Comfortaa-Regular-new.retain-gids.63.ttf       | Bin 0 -> 7404 bytes
 ...eSansPro-Regular.default.1FC,21,41,20,62,63.otf | Bin 3784 -> 2384 bytes
 .../SourceSansPro-Regular.default.61,62,63.otf     | Bin 3496 -> 2096 bytes
 ...ourceSansPro-Regular.default.D7,D8,D9,DA,DE.otf | Bin 3612 -> 2212 bytes
 ...subroutinize-retain-gids.1FC,21,41,20,62,63.otf | Bin 33516 -> 32124 bytes
 ...Regular.desubroutinize-retain-gids.61,62,63.otf | Bin 31080 -> 29688 bytes
 ...r.desubroutinize-retain-gids.D7,D8,D9,DA,DE.otf | Bin 34708 -> 33316 bytes
 ...o-Regular.desubroutinize.1FC,21,41,20,62,63.otf | Bin 3640 -> 2240 bytes
 ...urceSansPro-Regular.desubroutinize.61,62,63.otf | Bin 3400 -> 2000 bytes
 ...nsPro-Regular.desubroutinize.D7,D8,D9,DA,DE.otf | Bin 3596 -> 2196 bytes
 ...subroutinize-retain-gids.1FC,21,41,20,62,63.otf | Bin 33352 -> 31960 bytes
 ...p-hints-desubroutinize-retain-gids.61,62,63.otf | Bin 30956 -> 29564 bytes
 ...s-desubroutinize-retain-gids.D7,D8,D9,DA,DE.otf | Bin 34560 -> 33168 bytes
 ...rop-hints-desubroutinize.1FC,21,41,20,62,63.otf | Bin 3480 -> 2080 bytes
 ...-Regular.drop-hints-desubroutinize.61,62,63.otf | Bin 3288 -> 1876 bytes
 ...ar.drop-hints-desubroutinize.D7,D8,D9,DA,DE.otf | Bin 3448 -> 2048 bytes
 ...r.drop-hints-retain-gids.1FC,21,41,20,62,63.otf | Bin 33448 -> 32052 bytes
 ...Pro-Regular.drop-hints-retain-gids.61,62,63.otf | Bin 31028 -> 29632 bytes
 ...gular.drop-hints-retain-gids.D7,D8,D9,DA,DE.otf | Bin 34576 -> 33180 bytes
 ...nsPro-Regular.drop-hints.1FC,21,41,20,62,63.otf | Bin 3564 -> 2164 bytes
 .../SourceSansPro-Regular.drop-hints.61,62,63.otf  | Bin 3340 -> 1940 bytes
 ...ceSansPro-Regular.drop-hints.D7,D8,D9,DA,DE.otf | Bin 3464 -> 2064 bytes
 ...sPro-Regular.retain-gids.1FC,21,41,20,62,63.otf | Bin 33668 -> 32276 bytes
 .../SourceSansPro-Regular.retain-gids.61,62,63.otf | Bin 31180 -> 29788 bytes
 ...eSansPro-Regular.retain-gids.D7,D8,D9,DA,DE.otf | Bin 34724 -> 33332 bytes
 .../Roboto-Regular.default.1FC,21,41,20,62,63.ttf  | Bin 3772 -> 3164 bytes
 .../full-font/Roboto-Regular.default.61,62,63.ttf  | Bin 3368 -> 2760 bytes
 .../Roboto-Regular.default.D7,D8,D9,DA,DE.ttf      | Bin 3732 -> 3124 bytes
 ...oboto-Regular.drop-hints.1FC,21,41,20,62,63.ttf | Bin 2224 -> 1616 bytes
 .../Roboto-Regular.drop-hints.61,62,63.ttf         | Bin 2016 -> 1408 bytes
 .../Roboto-Regular.drop-hints.D7,D8,D9,DA,DE.ttf   | Bin 2252 -> 1644 bytes
 ...gular.default.3042,3044,3046,3048,304A,304B.ttf | Bin 3112 -> 2684 bytes
 ...gular.default.3042,3044,3046,73E0,5EA6,8F38.ttf | Bin 3356 -> 2928 bytes
 .../Mplus1p-Regular.default.61,63,65,6B.ttf        | Bin 2656 -> 2228 bytes
 ...gular.default.660E,6975,73E0,5EA6,8F38,6E05.ttf | Bin 3652 -> 3224 bytes
 .../japanese/Mplus1p-Regular.default.660E.ttf      | Bin 2396 -> 1968 bytes
 ...ar.drop-hints.3042,3044,3046,3048,304A,304B.ttf | Bin 2384 -> 1956 bytes
 ...ar.drop-hints.3042,3044,3046,73E0,5EA6,8F38.ttf | Bin 2628 -> 2200 bytes
 .../Mplus1p-Regular.drop-hints.61,63,65,6B.ttf     | Bin 1928 -> 1500 bytes
 ...ar.drop-hints.660E,6975,73E0,5EA6,8F38,6E05.ttf | Bin 2924 -> 2496 bytes
 .../japanese/Mplus1p-Regular.drop-hints.660E.ttf   | Bin 1668 -> 1240 bytes
 test/subset/data/fonts/Comfortaa-Regular-new.ttf   | Bin 0 -> 230316 bytes
 test/subset/data/tests/basics.tests                |   1 +
 test/subset/generate-expected-outputs.py           |   3 +--
 test/subset/run-tests.py                           |   3 ++-
 util/options-subset.cc                             |  23 +++++++++++++++---
 75 files changed, 50 insertions(+), 18 deletions(-)

commit 58ce477ac170969430310750b78dcb5f9e3b06a3
Author: Rod Sheeter <rsheeter@google.com>
Date:   Tue May 21 20:22:40 2019 -0700

    [subset] Report failure more often

 src/hb-ot-glyf-table.hh | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

commit 51a0129f7322e97825455df4eb6eecfea14980f5
Author: Rod Sheeter <rsheeter@google.com>
Date:   Tue May 21 20:12:19 2019 -0700

    [subset] Thar be comparison of integers of different signs

 test/api/hb-test.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 14e3b0cf41d9657c39f1f921f7e09a1418fa3278
Author: Rod Sheeter <rsheeter@google.com>
Date:   Tue May 21 20:09:36 2019 -0700

    [subset] Code review feedback

 src/hb-ot-glyf-table.hh | 53 +++++++++++++++++++++++++------------------------
 1 file changed, 27 insertions(+), 26 deletions(-)

commit a03ed95e7d50b9dd947e8982c7730de969795b05
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 21 16:43:14 2019 -0400

    [gen-ucd] Generate decomposition tables
    
    Code is ugly.  Ugh.

 src/gen-ucd.py | 40 ++++++++++++++++++++--------------------
 1 file changed, 20 insertions(+), 20 deletions(-)

commit 8a48c88fa9fe047a83ba4a45dbd6399412ca3302
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Tue May 21 13:02:54 2019 -0400

    [gen-ucd] Comment

 src/gen-ucd.py | 4 ++++
 1 file changed, 4 insertions(+)

commit b71d353cee89a6654810f75e7a1d7fd156b76faa
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Mon May 20 17:33:55 2019 -0400

    [gen-ucd] Remove some code

 src/gen-ucd.py | 7 -------
 1 file changed, 7 deletions(-)

commit 4ea44112b5163591ce0b086e0d13ec368f4f6ddc
Author: Rod Sheeter <rsheeter@google.com>
Date:   Tue May 21 13:07:43 2019 -0700

    [subset] Remove missed reference to hb-subset-glyf, was deleted

 src/Makefile.sources | 1 -
 1 file changed, 1 deletion(-)

commit b928de91a755788fd0fad9fa0f5f03c5670ac6a3
Author: Garret Rieger <grieger@google.com>
Date:   Tue May 21 11:23:26 2019 -0700

    [subset] Add test/subset/data/expected/layout to dist list.

 test/subset/data/Makefile.am | 1 +
 1 file changed, 1 insertion(+)

commit 0af9de13b78ddd35f58ee02ce8ffeffd99509ec5
Author: Garret Rieger <grieger@google.com>
Date:   Mon May 20 15:04:20 2019 -0700

    [subset] For gsub subsetting only consider glyphs reachable via gsub closure.

 src/hb-ot-layout-gsub-table.hh |  4 +--
 src/hb-subset-plan.cc          | 55 ++++++++++++++++++++----------------------
 src/hb-subset-plan.hh          | 10 ++++++++
 3 files changed, 38 insertions(+), 31 deletions(-)

commit c740c8636b48b1790bba42445a301e8e1cf8f749
Author: Garret Rieger <grieger@google.com>
Date:   Thu May 16 10:57:33 2019 -0700

    [subset] Add integration tests for SingleSubst.

 test/subset/data/Makefile.sources                      |   1 +
 ...ular.smallcaps.keep-layout-retain-gids.41,42,43.ttf | Bin 0 -> 6780 bytes
 ...Regular.smallcaps.keep-layout-retain-gids.41,43.ttf | Bin 0 -> 6396 bytes
 ...to-Regular.smallcaps.keep-layout-retain-gids.41.ttf | Bin 0 -> 6032 bytes
 ...to-Regular.smallcaps.keep-layout-retain-gids.43.ttf | Bin 0 -> 6088 bytes
 ...Regular.smallcaps.keep-layout-retain-gids.CA,CB.ttf | Bin 0 -> 7932 bytes
 .../Roboto-Regular.smallcaps.keep-layout.41,42,43.ttf  | Bin 0 -> 2972 bytes
 .../Roboto-Regular.smallcaps.keep-layout.41,43.ttf     | Bin 0 -> 2572 bytes
 .../layout/Roboto-Regular.smallcaps.keep-layout.41.ttf | Bin 0 -> 2196 bytes
 .../layout/Roboto-Regular.smallcaps.keep-layout.43.ttf | Bin 0 -> 2268 bytes
 .../Roboto-Regular.smallcaps.keep-layout.CA,CB.ttf     | Bin 0 -> 2612 bytes
 test/subset/data/fonts/Roboto-Regular.smallcaps.ttf    | Bin 0 -> 131632 bytes
 test/subset/data/profiles/keep-layout-retain-gids.txt  |   2 ++
 test/subset/data/profiles/keep-layout.txt              |   1 +
 test/subset/data/tests/full-font.tests                 |   1 -
 test/subset/data/tests/layout.tests                    |  13 +++++++++++++
 test/subset/generate-expected-outputs.py               |   3 ++-
 17 files changed, 19 insertions(+), 2 deletions(-)

commit 349d692b0ee45330220fd3ec9267979d73acd149
Author: Rod Sheeter <rsheeter@google.com>
Date:   Tue May 21 12:38:53 2019 -0700

    [subset] Iter in and out for loca

 src/hb-ot-glyf-table.hh | 31 ++++++++++++++++---------------
 test/api/hb-test.h      |  7 ++-----
 2 files changed, 18 insertions(+), 20 deletions(-)

commit 95445d79be0a79e6e2d384d46819730146d397d8
Author: Rod Sheeter <rsheeter@google.com>
Date:   Tue May 21 11:14:31 2019 -0700

    [subset] Write loca using more idiomatic harfbuzzese

 src/hb-ot-glyf-table.hh | 35 +++++++++++++++++++----------------
 1 file changed, 19 insertions(+), 16 deletions(-)

commit d1b12a546561a78ae3c3e9d6bffa057caf82dbee
Merge: 3a43603e f49a5bec
Author: Rod Sheeter <rsheeter@google.com>
Date:   Mon May 20 21:29:54 2019 -0700

    Merge branch 'master' of https://github.com/harfbuzz/harfbuzz into glyf

commit 3a43603ecea2c349f58396e103a52948776681e0
Author: Rod Sheeter <rsheeter@google.com>
Date:   Mon May 20 20:40:55 2019 -0700

    [subset] Fix memory leak caused by failure to cleanup glyf accelerator

 src/hb-ot-glyf-table.hh | 42 ++++++++++++++++++++++++++----------------
 1 file changed, 26 insertions(+), 16 deletions(-)

commit 5cedda5e4a3f726168b87d357aee723e6fd919cd
Author: Rod Sheeter <rsheeter@google.com>
Date:   Thu May 16 19:16:52 2019 -0700

    [subset] Fix null pointer deref, tidy up a bit

 src/hb-ot-glyf-table.hh     | 282 +++++++++++++++++++++++++-------------------
 test/api/test-subset-glyf.c |  18 +--
 2 files changed, 167 insertions(+), 133 deletions(-)

commit 8a84b540c7b850c1fb30d5bc1ffdeb43033be173
Author: Rod Sheeter <rsheeter@google.com>
Date:   Thu May 16 19:14:16 2019 -0700

    [subset] Tests passing using iterator based glyf

 src/hb-ot-glyf-table.hh     | 117 +++++++++++++++++++++++++++++++-------------
 test/api/test-subset-glyf.c |   4 +-
 2 files changed, 86 insertions(+), 35 deletions(-)

commit 82bbec306376d61b6700461c4038c6789e60a998
Merge: 9d09ac13 b7be5931
Author: Rod Sheeter <rsheeter@google.com>
Date:   Thu May 16 15:14:01 2019 -0700

    Merge branch 'master' of https://github.com/harfbuzz/harfbuzz into glyf

commit 9d09ac13a114967576284d0b006a0ac7965d928a
Author: rsheeter <rsheeter@google.com>
Date:   Sat May 11 23:16:40 2019 -0700

    [subset] Tweak hint stripping

 src/hb-ot-glyf-table.hh | 46 +++++++++++++++++++++++++++++++++-------------
 1 file changed, 33 insertions(+), 13 deletions(-)

commit 3a4c928fcfce5a8c7a56907b9945e87b0ce8e327
Author: rsheeter <rsheeter@google.com>
Date:   Sat May 11 22:06:46 2019 -0700

    [subset] Fix glyf tests except hint stripping & local test asan

 src/hb-ot-glyf-table.hh     | 93 +++++++++++++++++++++++++++++++++------------
 test/api/hb-subset-test.h   |  2 +-
 test/api/hb-test.h          | 13 +++++++
 test/api/test-subset-glyf.c |  8 ++--
 4 files changed, 86 insertions(+), 30 deletions(-)

commit b77dde8f138442935e5ca99460a520a4117d6dd2
Author: Rod Sheeter <rsheeter@google.com>
Date:   Fri May 10 16:52:19 2019 -0700

    [subset] Destroy blob

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

commit 14db6512f8dca80a575f468708949346b005834a
Author: Rod Sheeter <rsheeter@google.com>
Date:   Fri May 10 09:32:43 2019 -0700

    [subset] Correct flipped use short computation

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

commit ab3fe5de2bbe10fdc13711537f824b62d091f995
Author: Rod Sheeter <rsheeter@google.com>
Date:   Thu May 9 22:12:20 2019 -0700

    [subset] Glyf by iter now runs but fails tests

 src/hb-ot-glyf-table.hh | 88 +++++++++++++++++++++++++++++++++----------------
 1 file changed, 59 insertions(+), 29 deletions(-)

commit f8de063b48c243d551c8892bdd2a799606fda3f4
