)]}'
{
  "commit": "bdc15c6a7e97bc506c61ebe3e0c7cb1f7b8264f9",
  "tree": "8fd942a6e34fb12ef1e4d30c6863c16e937e0544",
  "parents": [
    "ee3a076b291d206c361431cc841407adf265c692"
  ],
  "author": {
    "name": "Raph Levien",
    "email": "raph@google.com",
    "time": "Mon Oct 02 11:20:28 2023 -0700"
  },
  "committer": {
    "name": "Raph Levien",
    "email": "raph@google.com",
    "time": "Mon Oct 02 11:23:28 2023 -0700"
  },
  "message": "Move WGPU engine to its own module\n\nDisentangle the wgpu implementation of Engine from the mechanisms to create recordings, as the former can in theory be used with multiple back-ends.\n\nAlso change the name to WgpuEngine to emphasize that it is one choice among possibly many. Most clients are currently using the `Renderer` abstraction, which is not changed, so the refactor is fairly well hidden.\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "057561d6e9781dda13b167a7752e1377835bb36b",
      "old_mode": 33188,
      "old_path": "src/engine.rs",
      "new_id": "56b0d01b1246ffc1261089f92c936a2296743ec2",
      "new_mode": 33188,
      "new_path": "src/engine.rs"
    },
    {
      "type": "modify",
      "old_id": "42d1a9642ffd7b70b75b7a7a64da56c5e3827535",
      "old_mode": 33188,
      "old_path": "src/lib.rs",
      "new_id": "f45bdcf2b5bcadadcd23828c6faf0c94cd0aae7a",
      "new_mode": 33188,
      "new_path": "src/lib.rs"
    },
    {
      "type": "modify",
      "old_id": "bd61e9d16fd2e39b442541eceac613f06e567b81",
      "old_mode": 33188,
      "old_path": "src/shaders.rs",
      "new_id": "a7c84b7bca6111a37aeba7534b9a8174a2348d31",
      "new_mode": 33188,
      "new_path": "src/shaders.rs"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "12380e32c955b42b1a1f1149b1932d2ea905e5de",
      "new_mode": 33188,
      "new_path": "src/wgpu_engine.rs"
    }
  ]
}
