)]}'
{
  "commit": "bbf3c4d8ba7971ab3b5b453d148b5bba9ddf6eb6",
  "tree": "13414530cb5bfb9e99fa01efb22f682d7a917125",
  "parents": [
    "69f70e1afdd777d2af0ed97e987f46454a5fbe97"
  ],
  "author": {
    "name": "luigi-rosso",
    "email": "hello@rive.app",
    "time": "Wed Sep 30 23:10:51 2026 +0000"
  },
  "committer": {
    "name": "luigi-rosso",
    "email": "hello@rive.app",
    "time": "Wed Sep 30 23:10:51 2026 +0000"
  },
  "message": "fix(renderer): vulkan rotation, mali triangle padding and wgsl bounds for script gpu passes (#14485) 4c2d79894f\n* fix(renderer): let the compositor rotate our Vulkan swapchains\n\n* fix(evi): rebuild the Vulkan swapchain when an Android surface rotates\n\n* fix(ore): report half float render targets on Vulkan, D3D and WebGPU\n\n* fix(renderer): enable robust buffer access so script shaders keep WGSL bounds\n\n* fix(scripting): clamp out of range accesses in script shaders as WGSL requires\n\n* fix(renderer): keep glsl texel fetches lowering, limit robust access to arm and surface polling to android\n\n* fix(renderer): name the interior triangulation read as the reason for robust access on mali\n\n* fix(renderer): zero the triangle buffer tail mali shades past a draw, drop robust access\n\n* fix(renderer): start each flush\u0027s triangles on a mali vertex group of 4\n\nCo-authored-by: Luigi Rosso \u003cluigi-rosso@users.noreply.github.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "48e9d66ca07904d3f782a2247c0dbb55460aeb39",
      "old_mode": 33188,
      "old_path": ".rive_head",
      "new_id": "2ef8e90f764db09452930081afc34acd95e6fb7e",
      "new_mode": 33188,
      "new_path": ".rive_head"
    },
    {
      "type": "modify",
      "old_id": "9e0942939757693bff8a218edcaf44066a5761d1",
      "old_mode": 33188,
      "old_path": "renderer/include/rive/renderer/gpu.hpp",
      "new_id": "f3b6558de17d23938f704d6706980f744e7da06b",
      "new_mode": 33188,
      "new_path": "renderer/include/rive/renderer/gpu.hpp"
    },
    {
      "type": "modify",
      "old_id": "258cd696d765482ecd35156a57b55b0efdd7829a",
      "old_mode": 33188,
      "old_path": "renderer/rive_vk_bootstrap/src/vulkan_swapchain.cpp",
      "new_id": "475d8087b7e4c2462d2d6d29e228730abee0c9e1",
      "new_mode": 33188,
      "new_path": "renderer/rive_vk_bootstrap/src/vulkan_swapchain.cpp"
    },
    {
      "type": "modify",
      "old_id": "9d753e565b88d710a98676080ffab312846348cd",
      "old_mode": 33188,
      "old_path": "renderer/src/ore/d3d11/ore_context_d3d11.cpp",
      "new_id": "a1bdbb363a3246bced3f9d9b69d2535b75861e5a",
      "new_mode": 33188,
      "new_path": "renderer/src/ore/d3d11/ore_context_d3d11.cpp"
    },
    {
      "type": "modify",
      "old_id": "f46006fdc3e974127879822881c97ee1ba5b570f",
      "old_mode": 33188,
      "old_path": "renderer/src/ore/d3d12/ore_context_d3d12.cpp",
      "new_id": "3603d30dfb629f9c0b0550a1e4d9e2f95ea558fd",
      "new_mode": 33188,
      "new_path": "renderer/src/ore/d3d12/ore_context_d3d12.cpp"
    },
    {
      "type": "modify",
      "old_id": "7d40f290e479c0e7bef747163c8665e968cd9707",
      "old_mode": 33188,
      "old_path": "renderer/src/ore/vulkan/ore_context_vulkan.cpp",
      "new_id": "61ca54677487b52e10ebee605abd963e843bf1cf",
      "new_mode": 33188,
      "new_path": "renderer/src/ore/vulkan/ore_context_vulkan.cpp"
    },
    {
      "type": "modify",
      "old_id": "bab08d589052c13a70fe5ea398426eaa67f1bd20",
      "old_mode": 33188,
      "old_path": "renderer/src/ore/wgpu/ore_context_wgpu.cpp",
      "new_id": "4c08b3f5013644402cbfebb710a5208fc0fd6a22",
      "new_mode": 33188,
      "new_path": "renderer/src/ore/wgpu/ore_context_wgpu.cpp"
    },
    {
      "type": "modify",
      "old_id": "57bcb5824514227aeeb6a025bd420d01dae5b877",
      "old_mode": 33188,
      "old_path": "renderer/src/render_context.cpp",
      "new_id": "ceac5c2bb7666b3254b94ebcf3c048e5c6ce4cf1",
      "new_mode": 33188,
      "new_path": "renderer/src/render_context.cpp"
    }
  ]
}
