)]}'
{
  "commit": "859dde4a7f34a4383179522f8e1061dcffac8691",
  "tree": "c41723a20c9db156b8cc4b30c1a2c8a19079b33b",
  "parents": [
    "bb8f66fdb5990ae5c0eb05152d51aca9a263b10d"
  ],
  "author": {
    "name": "Adrian Taylor",
    "email": "adetaylor@chromium.org",
    "time": "Fri Apr 01 16:32:54 2022 -0700"
  },
  "committer": {
    "name": "Commit Bot",
    "email": "commit-bot@chromium.org",
    "time": "Sat Apr 02 00:18:50 2022 +0000"
  },
  "message": "rust-project: Represent source roots properly\n\nThe current structure of a rust-project.json is documented here:\nhttps://rust-analyzer.github.io/manual.html#non-cargo-based-projects\n\nThere are a couple of differences from what gn previously generated:\n* There is no longer a \u0027roots\u0027 section\n* Each crate has its own set of source includes and exclude directories.\n\nThis difference has prevented rust-analyzer from correctly spotting and\nincluding Rust files pulled into a crate using the include! macro. With\nthe current change, \u0027gen\u0027 dirs are included such that such generated\nfiles can be identified and correctly included by rust-analyzer.\n\nBug: chromium/1293933\nChange-Id: I108dd20114274dc0b2112aefa5990af6381b5466\nReviewed-on: https://gn-review.googlesource.com/c/gn/+/13420\nReviewed-by: Brett Wilson \u003cbrettw@chromium.org\u003e\nCommit-Queue: Tyler Mandry \u003ctmandry@google.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "eea527c18ad28c900f1ce39a7d5c5d9bc5cd036e",
      "old_mode": 33188,
      "old_path": "src/gn/rust_project_writer.cc",
      "new_id": "8c73d57fad9c48647cdb6eefbc307bd503914f91",
      "new_mode": 33188,
      "new_path": "src/gn/rust_project_writer.cc"
    },
    {
      "type": "modify",
      "old_id": "24b13d01c3ac82028c6894927b8f7a37a6f94614",
      "old_mode": 33188,
      "old_path": "src/gn/rust_project_writer_helpers.h",
      "new_id": "4ccf56829bce898c7d2a5ea8b675cd00754a5d16",
      "new_mode": 33188,
      "new_path": "src/gn/rust_project_writer_helpers.h"
    },
    {
      "type": "modify",
      "old_id": "7ff3b487533e5e7035a0462406b0b955e31a0d96",
      "old_mode": 33188,
      "old_path": "src/gn/rust_project_writer_helpers_unittest.cc",
      "new_id": "ffdfcd87e9d9410ae714b579a0b1291366820793",
      "new_mode": 33188,
      "new_path": "src/gn/rust_project_writer_helpers_unittest.cc"
    },
    {
      "type": "modify",
      "old_id": "2d4f0dc6c71caabd652c8dca3ae3a96e5e09ba38",
      "old_mode": 33188,
      "old_path": "src/gn/rust_project_writer_unittest.cc",
      "new_id": "e57baf9d5e749fd54a555f7bc7ce44e7955a11c6",
      "new_mode": 33188,
      "new_path": "src/gn/rust_project_writer_unittest.cc"
    }
  ]
}
