)]}'
{
  "commit": "a3b7eb088362eae99f396717930c1f0bf61a19a2",
  "tree": "1fd50cd7514fd386a48569dbce1da2cb968910b4",
  "parents": [
    "92116c5af6d9845b6337d52b001a148c92f62418"
  ],
  "author": {
    "name": "Aaron Wood",
    "email": "aaronwood@google.com",
    "time": "Thu Jun 04 23:10:12 2020 -0700"
  },
  "committer": {
    "name": "Commit Bot",
    "email": "commit-bot@chromium.org",
    "time": "Fri Jun 12 03:53:54 2020 +0000"
  },
  "message": "[rust-project.json]  Refactor and print each crate source root\n\nThe source root for each crate is now required by rust analyzer.\nThis change refactors the RustProjectJsonWriter to work in two\nphases:\n1) generate the full list of crates (with dependencies and cfgs)\n2) write out that list of crates to the output stream\n\nThis also normalizes the output of the sysroot crates to use the\nsame json writing code as the rest of the crates (but sysroot\ncrates are still added to the crate list in a special manner).\n\nChange-Id: I4b78ecf5444edf538b2c20088ca83372054e2098\nReviewed-on: https://gn-review.googlesource.com/c/gn/+/8720\nCommit-Queue: Aaron Wood \u003caaronwood@google.com\u003e\nReviewed-by: Petr Hosek \u003cphosek@google.com\u003e\nReviewed-by: Tyler Mandry \u003ctmandry@google.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "f78ca2d35143443c566bde11fffdd56ad1b57fb0",
      "old_mode": 33188,
      "old_path": "src/gn/rust_project_writer.cc",
      "new_id": "1dc9f7a56af4f30abb8d11928a61dc03726e4872",
      "new_mode": 33188,
      "new_path": "src/gn/rust_project_writer.cc"
    },
    {
      "type": "modify",
      "old_id": "a70b2805937786f67592f8e6daeca3ed861d6103",
      "old_mode": 33188,
      "old_path": "src/gn/rust_project_writer_helpers.h",
      "new_id": "25340b31d673d5fe27bfc07edbc75020dd0936be",
      "new_mode": 33188,
      "new_path": "src/gn/rust_project_writer_helpers.h"
    },
    {
      "type": "modify",
      "old_id": "bb932add65791c690352fd712ba196119d8a3dfc",
      "old_mode": 33188,
      "old_path": "src/gn/rust_project_writer_helpers_unittest.cc",
      "new_id": "19501c44f0893eb7e150aa1433b6719d8865a85d",
      "new_mode": 33188,
      "new_path": "src/gn/rust_project_writer_helpers_unittest.cc"
    },
    {
      "type": "modify",
      "old_id": "fb7200ece37ab6febbe4e2f903ca9fef2c2cefa5",
      "old_mode": 33188,
      "old_path": "src/gn/rust_project_writer_unittest.cc",
      "new_id": "a1910e791eaaf8150c24c0d8590f8a3e71f6346d",
      "new_mode": 33188,
      "new_path": "src/gn/rust_project_writer_unittest.cc"
    }
  ]
}
