)]}'
{
  "commit": "46a7f96e2a2bbb703004df93d08b3d20199a404f",
  "tree": "b15c7de10900e85f34ae9c720d7658ee961789db",
  "parents": [
    "eb2ab3f91586e14ce34b777bc75656cf2c4a8ac4"
  ],
  "author": {
    "name": "mikerreed",
    "email": "hello@rive.app",
    "time": "Sat Jul 02 15:11:41 2022 +0000"
  },
  "committer": {
    "name": "mikerreed",
    "email": "hello@rive.app",
    "time": "Sat Jul 02 15:11:41 2022 +0000"
  },
  "message": "Implement RenderFont using CoreText\n\nCreate a backend for RenderFont that uses Apple\u0027s CoreText, so we don\u0027t have to include a copy of HarfBuzz (~750K).\n\nHad to (re)discover that Apple tries to \u0027help\u0027 when a font as an optical-size variation axis (opsz). In this case, Apple auto-sets the axis value to the font\u0027s pointsize... even if the caller didn\u0027t want that. Since we want to have our fonts at a huge size (to keep precision), this code has to...\n\n1. Determine if the font has a opsz axis\n2. If so, use that axis\u0027 default value for the font\u0027s pointsize, and\n3.    set the font\u0027s xform to account for that (resulting in the expected large size)\n\nDiffs\u003d\ndb49cdfaa Implement RenderFont using CoreText\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "2684f4a464c720369e871b304d4afa6c8b76d506",
      "old_mode": 33188,
      "old_path": ".rive_head",
      "new_id": "c56723df2db0911dae477a20caf3bae003f4d5cd",
      "new_mode": 33188,
      "new_path": ".rive_head"
    },
    {
      "type": "modify",
      "old_id": "2726453f3c38b310a21d7b46bfb97a860e141df2",
      "old_mode": 33188,
      "old_path": "skia/renderer/build/premake5.lua",
      "new_id": "898b534b0974c0f33c5c8423c82bc5255d00b01d",
      "new_mode": 33188,
      "new_path": "skia/renderer/build/premake5.lua"
    },
    {
      "type": "rename",
      "old_id": "050735f8912091d9479b6788f15e5c98e62b341a",
      "old_mode": 33188,
      "old_path": "skia/viewer/src/cg_skia_factory.hpp",
      "new_id": "050735f8912091d9479b6788f15e5c98e62b341a",
      "new_mode": 33188,
      "new_path": "skia/renderer/include/cg_skia_factory.hpp",
      "score": 100
    },
    {
      "type": "modify",
      "old_id": "aa45448d26a723f4a1a0314f5fb5e156b1228df6",
      "old_mode": 33188,
      "old_path": "skia/renderer/include/line_breaker.hpp",
      "new_id": "eff7d2da2274cfea31dcf0ece5e9ca0c95753f11",
      "new_mode": 33188,
      "new_path": "skia/renderer/include/line_breaker.hpp"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "19b10907439cac3f86b5c1cf2e2b2aebb90dee41",
      "new_mode": 33188,
      "new_path": "skia/renderer/include/mac_utils.hpp"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "80cb528513a48d3c0ed71a8b490fc9c2add79d55",
      "new_mode": 33188,
      "new_path": "skia/renderer/include/renderer_utils.hpp"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "c5dc223355632aab56569bfb54a314c0d136d93a",
      "new_mode": 33188,
      "new_path": "skia/renderer/include/renderfont_coretext.hpp"
    },
    {
      "type": "rename",
      "old_id": "7ffad4de70e3dfb2a9e3f836f56b33727ea21931",
      "old_mode": 33188,
      "old_path": "skia/viewer/src/cg_skia_factory.cpp",
      "new_id": "787d5a8790ee039b6a0886b8fae485f6a35fb4bb",
      "new_mode": 33188,
      "new_path": "skia/renderer/src/cg_skia_factory.cpp",
      "score": 86
    },
    {
      "type": "modify",
      "old_id": "53f8db5ce1e57fe521a4345542167d563a634d8d",
      "old_mode": 33188,
      "old_path": "skia/renderer/src/line_breaker.cpp",
      "new_id": "8031013203e63f3d14e7699e4d5247f400af69e8",
      "new_mode": 33188,
      "new_path": "skia/renderer/src/line_breaker.cpp"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "9258f5c16ffb57035e025ee1b05fa8399fd96877",
      "new_mode": 33188,
      "new_path": "skia/renderer/src/renderfont_coretext.cpp"
    },
    {
      "type": "modify",
      "old_id": "7d9c441cd17f905ea9260762b096181c1ab6987f",
      "old_mode": 33188,
      "old_path": "skia/renderer/src/renderfont_hb.cpp",
      "new_id": "8e5570f98640b32e851e99c1c4004d9e7097b4c0",
      "new_mode": 33188,
      "new_path": "skia/renderer/src/renderfont_hb.cpp"
    },
    {
      "type": "modify",
      "old_id": "8202faf4b219d43b5be60506dffe54311afe728c",
      "old_mode": 33188,
      "old_path": "skia/viewer/build/premake5.lua",
      "new_id": "c0f8ee00b46c2b433bb535ee6b4510ef5f2ae64a",
      "new_mode": 33188,
      "new_path": "skia/viewer/build/premake5.lua"
    },
    {
      "type": "modify",
      "old_id": "386a3594455fe3602a555c1025e8deaad756b361",
      "old_mode": 33188,
      "old_path": "skia/viewer/src/main.cpp",
      "new_id": "77c80da671adc272bd2a77cf4a95ae636954e71f",
      "new_mode": 33188,
      "new_path": "skia/viewer/src/main.cpp"
    },
    {
      "type": "modify",
      "old_id": "8536cbb3e1a9ad9d12d91c02b83d209a7d2849bc",
      "old_mode": 33188,
      "old_path": "skia/viewer/src/text_content.cpp",
      "new_id": "cbae245f78b6b7b21ca5a01ea08264c68e8795dc",
      "new_mode": 33188,
      "new_path": "skia/viewer/src/text_content.cpp"
    }
  ]
}
