)]}'
{
  "commit": "911b1631b81fa4fdc1cc1618ed8776e016eded60",
  "tree": "22911219f5c1b76903a4023ee76379b890ae4a5d",
  "parents": [
    "3d0537a01a32c3b295c8532cf77b3a379a7fb7c1"
  ],
  "author": {
    "name": "luigi-rosso",
    "email": "hello@rive.app",
    "time": "Tue Dec 05 21:21:22 2023 +0000"
  },
  "committer": {
    "name": "luigi-rosso",
    "email": "hello@rive.app",
    "time": "Tue Dec 05 21:21:22 2023 +0000"
  },
  "message": "Ios out of band\n\nfew bits to sort out\n- [x] make our mix of simulator/emulator consistent, settling on emulator\n- [x] passing the factory in works great for just in time asset decoding, but its not amazing when you want to decode ahead of time.\n- [x] couple of places left to pass this function signature through. (Question) is there a neater way to get this done, feels a bit like we are going back to parameter explosion a bit?\n- [x] should do a few examples, i think the complexity grows quite a bit in this one as you add caching, or callbacks\n- [x] should get the cached images/fonts to draw on init as well, either warming up cache, or jitting\n- [x] examples loading assets from the bundle (also there seem to be actual asset things too? should we use those?!)\n- [x] add test\n- [x] re-add \"preview\" project \u0026 rev the preview project once this has been deployed. (do this after new ios deploy)\n- [x] fix up race condition (see comment)\n\nhttps://github.com/rive-app/rive/assets/1216025/2c14330f-e8a4-481b-bc27-4807cabe3b82\n\n(simple example, both swift ui and standard)\n\n![CleanShot 2023-11-20 at 16 54 59](https://github.com/rive-app/rive/assets/1216025/a71e207c-30ad-44dd-9e4b-ad7431b22186)\n\nDiffs\u003d\nfabb7f97f Ios out of band (#6232)\n\nCo-authored-by: Gordon Hayes \u003cpggordonhayes@gmail.com\u003e\nCo-authored-by: Maxwell Talbot \u003ctalbot.maxwell@gmail.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "c640d70da5e5fc9bb839976ecc29a9c17d1238ac",
      "old_mode": 33188,
      "old_path": ".rive_head",
      "new_id": "1be5c7bbbf47cf871883e3d14a59587905ea14f7",
      "new_mode": 33188,
      "new_path": ".rive_head"
    },
    {
      "type": "modify",
      "old_id": "bfedda27b918024ec864fee3e5ab6d9ac9ab876b",
      "old_mode": 33188,
      "old_path": "build/premake5.lua",
      "new_id": "d90d30e183418e26f17f35c2d52dc9f0a3bbeb26",
      "new_mode": 33188,
      "new_path": "build/premake5.lua"
    },
    {
      "type": "modify",
      "old_id": "be3354f097cf3fd403645d98e60a126f2986ec19",
      "old_mode": 33188,
      "old_path": "dependencies/premake5_harfbuzz.lua",
      "new_id": "b346944638eb5de1b9956af8bb191834ebda3401",
      "new_mode": 33188,
      "new_path": "dependencies/premake5_harfbuzz.lua"
    },
    {
      "type": "modify",
      "old_id": "dff476ef807010e08d4cc5de573b15fcef4f03f0",
      "old_mode": 33188,
      "old_path": "dependencies/premake5_sheenbidi.lua",
      "new_id": "7cd1d99a2f8cfda8d1e6eb6d9743e4604f241e39",
      "new_mode": 33188,
      "new_path": "dependencies/premake5_sheenbidi.lua"
    },
    {
      "type": "modify",
      "old_id": "55661bb56e2020f1db4f2cbc5823828f3d0c029d",
      "old_mode": 33188,
      "old_path": "include/rive/file_asset_loader.hpp",
      "new_id": "43bb2bfa4d1165a06d65d0ea3fbc15dfeb1fc4cf",
      "new_mode": 33188,
      "new_path": "include/rive/file_asset_loader.hpp"
    },
    {
      "type": "modify",
      "old_id": "30d7d8a7e3edff0cecf08639a131ab0ca09053ea",
      "old_mode": 33188,
      "old_path": "include/rive/relative_local_asset_loader.hpp",
      "new_id": "f37271ae36fdfac8cc54d800d7e37d6b7790f183",
      "new_mode": 33188,
      "new_path": "include/rive/relative_local_asset_loader.hpp"
    },
    {
      "type": "modify",
      "old_id": "850878c194bdf41cb0c8e6cf9e736d9281254f11",
      "old_mode": 33261,
      "old_path": "skia/dependencies/make_skia.sh",
      "new_id": "d1f1008b01aec597af9d8dd6487085fc0eced43f",
      "new_mode": 33261,
      "new_path": "skia/dependencies/make_skia.sh"
    },
    {
      "type": "modify",
      "old_id": "d4f801208fc59477e68dd333dac8c6daac1c18a8",
      "old_mode": 33261,
      "old_path": "skia/dependencies/make_skia_ios.sh",
      "new_id": "bc10d496ba63a681fecaa04bf43fac36048f4472",
      "new_mode": 33261,
      "new_path": "skia/dependencies/make_skia_ios.sh"
    },
    {
      "type": "modify",
      "old_id": "b5f1558e7da559460cc4184e378edb949ed097e3",
      "old_mode": 33188,
      "old_path": "src/importers/file_asset_importer.cpp",
      "new_id": "935aad31bab874ac118e2b816356adcbff4d28d2",
      "new_mode": 33188,
      "new_path": "src/importers/file_asset_importer.cpp"
    },
    {
      "type": "modify",
      "old_id": "a05b526432e7380a95db57e5507e53f8d1e717a9",
      "old_mode": 33188,
      "old_path": "test/image_asset_test.cpp",
      "new_id": "5c86ef4e78dffc41282a49102f039ea953e2b567",
      "new_mode": 33188,
      "new_path": "test/image_asset_test.cpp"
    },
    {
      "type": "modify",
      "old_id": "29eb716bbcc83bbc89a52a9775b9084596d20445",
      "old_mode": 33188,
      "old_path": "test/in_band_asset_load_test.cpp",
      "new_id": "e0ea22e055c9513944b11693e0d822be23f74d4b",
      "new_mode": 33188,
      "new_path": "test/in_band_asset_load_test.cpp"
    }
  ]
}
