)]}'
{
  "commit": "f8d7c6eea2f0905a6fcd32916817e26ba1e02ae3",
  "tree": "1e89721446acf22b573f9bb15a66df6241435d2b",
  "parents": [
    "2987f3c04d9b4f401dbe4fac6a52832ff90f17aa"
  ],
  "author": {
    "name": "Zhaoming Jiang",
    "email": "zhaoming.jiang@microsoft.com",
    "time": "Wed Jun 04 19:50:35 2025 -0700"
  },
  "committer": {
    "name": "Dawn LUCI CQ",
    "email": "dawn-scoped@luci-project-accounts.iam.gserviceaccount.com",
    "time": "Wed Jun 04 19:50:35 2025 -0700"
  },
  "message": "Dawn: Support streaming ShaderModuleParseResult\n\nThis CL add StreamOut support for std::optional, and add a wrapper\nUnsafeUnserializedValue to replace CacheKey::UnsafeUnkeyedValue and hold\nunserializable value that will do nothing when streaming in and will set\nto default constructed value when streamed out to.\nThese help making ShaderModuleParseResult serializable for shader\nmodule blob cache.\n\nBug: 42240459, 402772740\nChange-Id: Ic6199e46a1be34c4d03047af361dfab1ef807817\nReviewed-on: https://dawn-review.googlesource.com/c/dawn/+/244094\nReviewed-by: Corentin Wallez \u003ccwallez@chromium.org\u003e\nCommit-Queue: Zhaoming Jiang \u003czhaoming.jiang@microsoft.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "b5e32db5593541d2178a26cbbd0a38f5e9e4805e",
      "old_mode": 33188,
      "old_path": "src/dawn/native/CacheKey.h",
      "new_id": "d8b5d4760cf74eee55699a5c5c6fbb6814161380",
      "new_mode": 33188,
      "new_path": "src/dawn/native/CacheKey.h"
    },
    {
      "type": "modify",
      "old_id": "72dafb21ac564f268f96782313e86630006cea5e",
      "old_mode": 33188,
      "old_path": "src/dawn/native/Serializable.h",
      "new_id": "88918c2cb5e160772e072b528bcf2dae8600ff28",
      "new_mode": 33188,
      "new_path": "src/dawn/native/Serializable.h"
    },
    {
      "type": "modify",
      "old_id": "a8d04d89f165cc1ed23941ef4df7a79436d48547",
      "old_mode": 33188,
      "old_path": "src/dawn/native/d3d/D3DCompilationRequest.h",
      "new_id": "bd3c8b9063648d064dcf9e64b2b52df37da2bc40",
      "new_mode": 33188,
      "new_path": "src/dawn/native/d3d/D3DCompilationRequest.h"
    },
    {
      "type": "modify",
      "old_id": "db399b31c7e9b2d5f8cebfea9f790ae780306b52",
      "old_mode": 33188,
      "old_path": "src/dawn/native/d3d/ShaderUtils.cpp",
      "new_id": "93ad32a0fff870bcd48f9054ef810e54cde034eb",
      "new_mode": 33188,
      "new_path": "src/dawn/native/d3d/ShaderUtils.cpp"
    },
    {
      "type": "modify",
      "old_id": "d5c7073f64e32642c1a58b9b9780055716eccf88",
      "old_mode": 33188,
      "old_path": "src/dawn/native/d3d11/ShaderModuleD3D11.cpp",
      "new_id": "c8ff479c769b0c4cecdd880d561e2c11537c179b",
      "new_mode": 33188,
      "new_path": "src/dawn/native/d3d11/ShaderModuleD3D11.cpp"
    },
    {
      "type": "modify",
      "old_id": "ca4b0d69995574959da77b1037f3a04d1bec1b12",
      "old_mode": 33188,
      "old_path": "src/dawn/native/d3d12/ShaderModuleD3D12.cpp",
      "new_id": "d4bf39e040ed71421fdb94db6e78a775aaf96407",
      "new_mode": 33188,
      "new_path": "src/dawn/native/d3d12/ShaderModuleD3D12.cpp"
    },
    {
      "type": "modify",
      "old_id": "4b96fa609f609a63714ddc90593fa5dfb470378c",
      "old_mode": 33188,
      "old_path": "src/dawn/native/metal/ShaderModuleMTL.mm",
      "new_id": "d4875370b9fb727b6552fd716926a1882563527f",
      "new_mode": 33188,
      "new_path": "src/dawn/native/metal/ShaderModuleMTL.mm"
    },
    {
      "type": "modify",
      "old_id": "62cacee80076d892c57296ea4f3f967ecf8229ff",
      "old_mode": 33188,
      "old_path": "src/dawn/native/opengl/ShaderModuleGL.cpp",
      "new_id": "41109c7b6aff4ef5b4c1e49a60217b86afbdd650",
      "new_mode": 33188,
      "new_path": "src/dawn/native/opengl/ShaderModuleGL.cpp"
    },
    {
      "type": "modify",
      "old_id": "b3a5cb0f879e36a86c1269ec672a28dac6b3602b",
      "old_mode": 33188,
      "old_path": "src/dawn/native/stream/Stream.cpp",
      "new_id": "1682b633d4c122752304932ee53765dd2b916cdc",
      "new_mode": 33188,
      "new_path": "src/dawn/native/stream/Stream.cpp"
    },
    {
      "type": "modify",
      "old_id": "3ffd37d790028b2c1c103546b59a110bd94a0edf",
      "old_mode": 33188,
      "old_path": "src/dawn/native/stream/Stream.h",
      "new_id": "acdf30f249a968d93c25a4c7c6746bb00234c733",
      "new_mode": 33188,
      "new_path": "src/dawn/native/stream/Stream.h"
    },
    {
      "type": "modify",
      "old_id": "7de811ab1cfc42343071315334d8c7fe13f24d44",
      "old_mode": 33188,
      "old_path": "src/dawn/native/vulkan/ShaderModuleVk.cpp",
      "new_id": "45a2f08f051e82afe1519d059df8b5bf13e5a304",
      "new_mode": 33188,
      "new_path": "src/dawn/native/vulkan/ShaderModuleVk.cpp"
    },
    {
      "type": "modify",
      "old_id": "152fa6157bbb1940cdb8d62bdcd0a93791cb4516",
      "old_mode": 33188,
      "old_path": "src/dawn/tests/unittests/native/CacheRequestTests.cpp",
      "new_id": "e144a1a20e2e4df58234800f59eb7db1acc4e67f",
      "new_mode": 33188,
      "new_path": "src/dawn/tests/unittests/native/CacheRequestTests.cpp"
    },
    {
      "type": "modify",
      "old_id": "e3b270f3d15e2751e9a17066028ce720bc1c4251",
      "old_mode": 33188,
      "old_path": "src/dawn/tests/unittests/native/StreamTests.cpp",
      "new_id": "88feeef04bac112946b3a5c3b27f542bee745239",
      "new_mode": 33188,
      "new_path": "src/dawn/tests/unittests/native/StreamTests.cpp"
    }
  ]
}
