)]}'
{
  "commit": "eb496d0a4d516615c9d544a6eaf7d4bc80958bc3",
  "tree": "69befb86cd5aa64a0196d9857e32e5424fc57744",
  "parents": [
    "94b36c3e86caf55a3a84c9f9b23fea02e31a4fde"
  ],
  "author": {
    "name": "Ben Clayton",
    "email": "bclayton@google.com",
    "time": "Wed Feb 24 15:55:24 2021 +0000"
  },
  "committer": {
    "name": "Commit Bot service account",
    "email": "commit-bot@chromium.org",
    "time": "Wed Feb 24 15:55:24 2021 +0000"
  },
  "message": "transform: API cleanup\n\nTransforms are meant to be reusable. Those that hold state cannot be used concurrently.\nState leakage between runs is dangerous.\nTo fix this:\n* Add transform::Data - A new base class for extra information emitted by transforms.\n* Add transform::DataMap - A container of Data, keyed by type.\n* Add a transform::DataMap field to Transform::Output.\n* Have FirstIndexOffset emit a FirstIndexOffset::Data.\n* Deprecate the getters on the transform.\n\nMutability of the transform config is also dangerous as setters can be called while a transform is actively running on another thread.\nTo fix:\n* Expose a VertexPulling::Config structure and add a constructor that accepts this.\n* Deprecate the setters on VertexPulling.\n\nAlso deprecate Transform::Output::diagnostics.\nPut all the transform diagnostics into the returned Program. Reduces error handling of the client.\n\nChange-Id: Ibd228dc2fbf004ede4720e2d6019c024bc5934d1\nReviewed-on: https://dawn-review.googlesource.com/c/tint/+/42264\nReviewed-by: dan sinclair \u003cdsinclair@chromium.org\u003e\nReviewed-by: Ryan Harrison \u003crharrison@chromium.org\u003e\nCommit-Queue: Ben Clayton \u003cbclayton@google.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "9e68902aef5b3b2557e2abc5bbb450e85805b497",
      "old_mode": 33188,
      "old_path": "fuzzers/tint_common_fuzzer.cc",
      "new_id": "a1ed3894c9a666ba0f68f1e9d0cd53eef2394994",
      "new_mode": 33188,
      "new_path": "fuzzers/tint_common_fuzzer.cc"
    },
    {
      "type": "modify",
      "old_id": "b847ffe51e3e0693c1d1f177f0efd0c0b2136705",
      "old_mode": 33188,
      "old_path": "samples/main.cc",
      "new_id": "0d9d0b3ac04b20e7d80d8099d23af57c09913d9f",
      "new_mode": 33188,
      "new_path": "samples/main.cc"
    },
    {
      "type": "modify",
      "old_id": "72799be1f98566612f5341160e644f957db27741",
      "old_mode": 33188,
      "old_path": "src/transform/bound_array_accessors.cc",
      "new_id": "4cb38227d0d40722ae99fcc55f9ce327dc61c5a7",
      "new_mode": 33188,
      "new_path": "src/transform/bound_array_accessors.cc"
    },
    {
      "type": "modify",
      "old_id": "899e7d3ef5de1d44210e73dfdcfbcad8871a6dae",
      "old_mode": 33188,
      "old_path": "src/transform/bound_array_accessors.h",
      "new_id": "22e0ffd2b011288856c18c18eb1c6ddba91b8487",
      "new_mode": 33188,
      "new_path": "src/transform/bound_array_accessors.h"
    },
    {
      "type": "modify",
      "old_id": "783bb98645eb8421dcea088948a3b1d8595c0ae8",
      "old_mode": 33188,
      "old_path": "src/transform/bound_array_accessors_test.cc",
      "new_id": "58def8f6e8f96c500fef2cf865c207b8d3692924",
      "new_mode": 33188,
      "new_path": "src/transform/bound_array_accessors_test.cc"
    },
    {
      "type": "modify",
      "old_id": "9a4a35958c55ac6933c3e8252764fd4658e9dca1",
      "old_mode": 33188,
      "old_path": "src/transform/emit_vertex_point_size_test.cc",
      "new_id": "5fc7dbae9912c42d092ec8ca911b991bccc58215",
      "new_mode": 33188,
      "new_path": "src/transform/emit_vertex_point_size_test.cc"
    },
    {
      "type": "modify",
      "old_id": "6afd9fdc19feb7dca4dbc4d447f41965405db76b",
      "old_mode": 33188,
      "old_path": "src/transform/first_index_offset.cc",
      "new_id": "29fe53f8c373474d96528c61df0867277bea6428",
      "new_mode": 33188,
      "new_path": "src/transform/first_index_offset.cc"
    },
    {
      "type": "modify",
      "old_id": "b8983ae81a818de2bf7cbd1b7936b7cf35cd1f2d",
      "old_mode": 33188,
      "old_path": "src/transform/first_index_offset.h",
      "new_id": "dfb0353f588368333b8a0d1462ca9721587e8bd4",
      "new_mode": 33188,
      "new_path": "src/transform/first_index_offset.h"
    },
    {
      "type": "modify",
      "old_id": "977a7166a76c43ee0e947a73f046a8d598e5af03",
      "old_mode": 33188,
      "old_path": "src/transform/first_index_offset_test.cc",
      "new_id": "c102c9d5568143050545d4ee4a437ccd33dc3c62",
      "new_mode": 33188,
      "new_path": "src/transform/first_index_offset_test.cc"
    },
    {
      "type": "modify",
      "old_id": "38a4e69dae18f53f3cb513d6e82a654eb5e5de53",
      "old_mode": 33188,
      "old_path": "src/transform/hlsl_test.cc",
      "new_id": "3eca722253d10a70ef3f587510aaddcc8779b7d3",
      "new_mode": 33188,
      "new_path": "src/transform/hlsl_test.cc"
    },
    {
      "type": "modify",
      "old_id": "31fe9ac2905650f5e14501e5bc9f0d6e3a5e191e",
      "old_mode": 33188,
      "old_path": "src/transform/manager.cc",
      "new_id": "e91a54f186a1b3227b80e71c3d317f48d0a04b3e",
      "new_mode": 33188,
      "new_path": "src/transform/manager.cc"
    },
    {
      "type": "modify",
      "old_id": "53bdc52435f36299755690924ee2f5a5e11a57d3",
      "old_mode": 33188,
      "old_path": "src/transform/spirv_test.cc",
      "new_id": "4740a419d7b28850351f0852c68380f168e05263",
      "new_mode": 33188,
      "new_path": "src/transform/spirv_test.cc"
    },
    {
      "type": "modify",
      "old_id": "f52c5e741b53a4bb898d5f381a7997a3f62ac9b9",
      "old_mode": 33188,
      "old_path": "src/transform/test_helper.h",
      "new_id": "ae78d51ec83c4c5e6d7fef3f90ed203e8eaad3f3",
      "new_mode": 33188,
      "new_path": "src/transform/test_helper.h"
    },
    {
      "type": "modify",
      "old_id": "c037cdba54fde1571ca46d873c4b519ffd7c5f0a",
      "old_mode": 33188,
      "old_path": "src/transform/transform.cc",
      "new_id": "ed368ae058414d464416f2f10f8484b81095e613",
      "new_mode": 33188,
      "new_path": "src/transform/transform.cc"
    },
    {
      "type": "modify",
      "old_id": "3516259183324d79dafb973ab878a731170b7559",
      "old_mode": 33188,
      "old_path": "src/transform/transform.h",
      "new_id": "c598b83651ed7f650fc8a1774b45511eb36b6e08",
      "new_mode": 33188,
      "new_path": "src/transform/transform.h"
    },
    {
      "type": "modify",
      "old_id": "f052bd44aa45786d3111ebeb0956ab6a334e6f7b",
      "old_mode": 33188,
      "old_path": "src/transform/vertex_pulling.cc",
      "new_id": "273806f7cecbd10d5c44c69ffd8e7e9c00df5b6c",
      "new_mode": 33188,
      "new_path": "src/transform/vertex_pulling.cc"
    },
    {
      "type": "modify",
      "old_id": "215052e458a086d122661888975082e01814b30a",
      "old_mode": 33188,
      "old_path": "src/transform/vertex_pulling.h",
      "new_id": "a9bdb52f784f5b855e2b96756bb8745d8b682726",
      "new_mode": 33188,
      "new_path": "src/transform/vertex_pulling.h"
    },
    {
      "type": "modify",
      "old_id": "c81a00e93139993f7ded9aeaf4b83ca35551edc4",
      "old_mode": 33188,
      "old_path": "src/transform/vertex_pulling_test.cc",
      "new_id": "cab1d4dca84cd8501b5bea92d0c2b12a7cad65bc",
      "new_mode": 33188,
      "new_path": "src/transform/vertex_pulling_test.cc"
    },
    {
      "type": "modify",
      "old_id": "2b169f7ad00837029ea6c65607514fc59c53bd95",
      "old_mode": 33188,
      "old_path": "src/writer/hlsl/test_helper.h",
      "new_id": "3c6cff7d3075be6f759d0ce9d21fde8d882cd6d1",
      "new_mode": 33188,
      "new_path": "src/writer/hlsl/test_helper.h"
    },
    {
      "type": "modify",
      "old_id": "ba5e51a239dad443fc2eb2fd04a18df36ee0a6aa",
      "old_mode": 33188,
      "old_path": "src/writer/spirv/test_helper.h",
      "new_id": "bd053ab02fb3584016ad0f833578e5f576350d65",
      "new_mode": 33188,
      "new_path": "src/writer/spirv/test_helper.h"
    }
  ]
}
