)]}'
{
  "commit": "de21b5fc5bf201c6c8e4fa54f4a81f91bf7f9559",
  "tree": "13e1b473292d4ad6234c5af5b77f5ae9ea3f825c",
  "parents": [
    "844c0beba03f9ac66142b567345965f1028e50b7"
  ],
  "author": {
    "name": "Alex Gemberg",
    "email": "gemberg@canva.com",
    "time": "Wed Feb 25 13:27:41 2026 +1100"
  },
  "committer": {
    "name": "GitHub",
    "email": "noreply@github.com",
    "time": "Wed Feb 25 02:27:41 2026 +0000"
  },
  "message": "vello_hybrid: Add `render_to_atlas` and `write_to_atlas` APIs for glyph caching (#1458)\n\nAdds public APIs to both the wgpu and webgl renderers for rendering\n`Scene` content directly into atlas layers and writing pixel data to\npre-allocated atlas regions. This enables a glyph caching workflow where\nvector glyphs are rasterized into the atlas once and reused as cached\nimages in subsequent passes.\n\nThe key additions are `render_to_atlas`, which runs the scheduler\ntargeting a specific atlas layer (using a placeholder dummy texture to\navoid read-write hazards), and `write_to_atlas`, extracted from\n`upload_image`, which writes pixel data to an already-allocated region.",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "dcfd828aa2c8d1cf24d9d294f00e706c199f5531",
      "old_mode": 33188,
      "old_path": "sparse_strips/vello_hybrid/src/lib.rs",
      "new_id": "fd8bf218045332362630f6feccff3dec17079d23",
      "new_mode": 33188,
      "new_path": "sparse_strips/vello_hybrid/src/lib.rs"
    },
    {
      "type": "modify",
      "old_id": "c217bda49e28aadf8198ff01d1ea97d315523c5f",
      "old_mode": 33188,
      "old_path": "sparse_strips/vello_hybrid/src/render/webgl.rs",
      "new_id": "361a829777084303bd1e945e72ffa4701e36c5e1",
      "new_mode": 33188,
      "new_path": "sparse_strips/vello_hybrid/src/render/webgl.rs"
    },
    {
      "type": "modify",
      "old_id": "f7feb8aa41201ca9525caec03cb1468b6da39941",
      "old_mode": 33188,
      "old_path": "sparse_strips/vello_hybrid/src/render/wgpu.rs",
      "new_id": "39fab5c2a21b3d1b88a99ceb50120d2ecf89dfaa",
      "new_mode": 33188,
      "new_path": "sparse_strips/vello_hybrid/src/render/wgpu.rs"
    },
    {
      "type": "modify",
      "old_id": "48cfdddf8d6dc6005c7310fe3e1191d93197088c",
      "old_mode": 33188,
      "old_path": "sparse_strips/vello_hybrid/src/scene.rs",
      "new_id": "1421baf8c1f737476b17ec7c251c49e443533e18",
      "new_mode": 33188,
      "new_path": "sparse_strips/vello_hybrid/src/scene.rs"
    }
  ]
}
