)]}'
{
  "commit": "f2541753cdf6ea4abd4a0ac867dc24c93a3672d9",
  "tree": "f60ff121bb289492fdbedb80fbc5500160cb8541",
  "parents": [
    "9cda87a66daf33df0166c4a49cfcbb24597fa9e6"
  ],
  "author": {
    "name": "mikerreed",
    "email": "hello@rive.app",
    "time": "Fri Jul 29 18:06:43 2022 +0000"
  },
  "committer": {
    "name": "mikerreed",
    "email": "hello@rive.app",
    "time": "Fri Jul 29 18:06:43 2022 +0000"
  },
  "message": "Fallback for harfbuzz\n\nPlumbing is mostly in place\nTesting is just a start : have hard-coded a specific unicode font (will improve in later PRs)\n\nDesign\n\nHarfbuzz backend has a function-pointer it will call to try to get addtional fonts to fill in the gaps (missing glyphs).\nIt passes a span of some of the missing characters as a clue (though in this impl, we always just return the same\nfallback font).\n\nLikely to do a better job in CJK, we may want to know some language information from the client -- which we can\npass along to the fallback-proc.\n\nDiffs\u003d\nb4eb6b315 Fallback for harfbuzz\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "03577d807df0662f44ea9ddf8c8e1d19c62c1326",
      "old_mode": 33188,
      "old_path": ".rive_head",
      "new_id": "13d8aaf3a632aadd4ff0e05686784c826997c644",
      "new_mode": 33188,
      "new_path": ".rive_head"
    },
    {
      "type": "modify",
      "old_id": "084efec5b7fceab130c82d41aa09a9d0a873be4c",
      "old_mode": 33188,
      "old_path": "skia/renderer/include/renderfont_hb.hpp",
      "new_id": "dd8ae3e41ea1a1b1e2f957485fb540956cc4138d",
      "new_mode": 33188,
      "new_path": "skia/renderer/include/renderfont_hb.hpp"
    },
    {
      "type": "modify",
      "old_id": "e041a998f37b52a6555970919474fa159cced7b9",
      "old_mode": 33188,
      "old_path": "skia/renderer/src/renderfont_hb.cpp",
      "new_id": "3b2cd1c6576c373f004edff8c0e43b0f8ff4ba5b",
      "new_mode": 33188,
      "new_path": "skia/renderer/src/renderfont_hb.cpp"
    },
    {
      "type": "modify",
      "old_id": "3d4201421299fd01bef7f92d15db914a0de853cf",
      "old_mode": 33188,
      "old_path": "viewer/src/viewer_content/text_content.cpp",
      "new_id": "96760568b2960a71c3cfd87e1dc6304ea66c7be5",
      "new_mode": 33188,
      "new_path": "viewer/src/viewer_content/text_content.cpp"
    }
  ]
}
