)]}'
{
  "commit": "fe36c7c1bfc4798084d7e6de670b2b0f36182dc0",
  "tree": "50aeb09210703de888f511dadb72b8c4f363b3f6",
  "parents": [
    "eb18f84fd1c3d7d9d8caccde4b44e7c5ec0df833"
  ],
  "author": {
    "name": "Petr Hosek",
    "email": "phosek@google.com",
    "time": "Tue Nov 26 14:38:08 2019 -0800"
  },
  "committer": {
    "name": "Commit Bot",
    "email": "commit-bot@chromium.org",
    "time": "Sat Dec 07 03:31:18 2019 +0000"
  },
  "message": "Create a new target type for Rust procedural macro\n\nRust procedural macros are special types, even though they\u0027re\ntechnically shared libraries, they\u0027re not linked into targets and\ntheir building follows different rules and requires different defaults\n(e.g. they don\u0027t support sanitizers unlike other Rust targets). This\nchange introduces new rust_proc_macro target type that could be used for\nbuilding procedural macros rather than overloading shared_library.\n\nChange-Id: I9ff176a5893681ba2c3d8ce8ea291603d253e991\nReviewed-on: https://gn-review.googlesource.com/c/gn/+/6700\nCommit-Queue: Petr Hosek \u003cphosek@google.com\u003e\nReviewed-by: Brett Wilson \u003cbrettw@chromium.org\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "8253dae2749f5a0242268d442363aa0caa5d1ecb",
      "old_mode": 33188,
      "old_path": "docs/reference.md",
      "new_id": "e5746577c26f4d9f4e4ed5767265affd4d108ad1",
      "new_mode": 33188,
      "new_path": "docs/reference.md"
    },
    {
      "type": "modify",
      "old_id": "bd9e15051e58404de55dbed693c900e4d8b5aac3",
      "old_mode": 33188,
      "old_path": "misc/emacs/gn-mode.el",
      "new_id": "814be4bc43258906ba93a0fcf0697c09ee8859cd",
      "new_mode": 33188,
      "new_path": "misc/emacs/gn-mode.el"
    },
    {
      "type": "modify",
      "old_id": "775b95e313b56d753ea0bb7bfc973139227670b9",
      "old_mode": 33188,
      "old_path": "misc/tm/GN.tmLanguage",
      "new_id": "81d650484f2d0d0b059568eb65c0f93064a37e90",
      "new_mode": 33188,
      "new_path": "misc/tm/GN.tmLanguage"
    },
    {
      "type": "modify",
      "old_id": "6fe6d0bdeadf3d29ab57641bb1c94e857d127bae",
      "old_mode": 33188,
      "old_path": "misc/vim/syntax/gn.vim",
      "new_id": "25e4340a5ffb6c2ad13744f8baa31823be583e93",
      "new_mode": 33188,
      "new_path": "misc/vim/syntax/gn.vim"
    },
    {
      "type": "modify",
      "old_id": "7fc95eb5e14eaaa2ea9d44db5fd6525952f416fc",
      "old_mode": 33188,
      "old_path": "src/gn/function_toolchain.cc",
      "new_id": "fc9b0c1b6bc4b87da927acb65cf89642903abe5d",
      "new_mode": 33188,
      "new_path": "src/gn/function_toolchain.cc"
    },
    {
      "type": "modify",
      "old_id": "91723f52bbd37553b3345565f5c575a3fe994a34",
      "old_mode": 33188,
      "old_path": "src/gn/functions.cc",
      "new_id": "640bcea0802b1a95adf1db00b0bf54abe86049e9",
      "new_mode": 33188,
      "new_path": "src/gn/functions.cc"
    },
    {
      "type": "modify",
      "old_id": "8149db7bf4ed56a0ac8ebabbe906a41e31e86a55",
      "old_mode": 33188,
      "old_path": "src/gn/functions.h",
      "new_id": "50275591aa5d9c1e288dcb4c50a8b8e04d2e8055",
      "new_mode": 33188,
      "new_path": "src/gn/functions.h"
    },
    {
      "type": "modify",
      "old_id": "0f9fc505a5b88cae36d29de7f3a883b6a3d9e685",
      "old_mode": 33188,
      "old_path": "src/gn/functions_target.cc",
      "new_id": "2c880c026930fd003d312eea462f71a67d816191",
      "new_mode": 33188,
      "new_path": "src/gn/functions_target.cc"
    },
    {
      "type": "modify",
      "old_id": "2fba66cd7827616fb84f8d0904cc1380a0f67b97",
      "old_mode": 33188,
      "old_path": "src/gn/ninja_c_binary_target_writer.cc",
      "new_id": "f1d2fe5189c8745198d6b157dd0f197052b774e7",
      "new_mode": 33188,
      "new_path": "src/gn/ninja_c_binary_target_writer.cc"
    },
    {
      "type": "modify",
      "old_id": "f23680d74a511ffa9bdf94f6f033c9fbb8f1cf78",
      "old_mode": 33188,
      "old_path": "src/gn/ninja_rust_binary_target_writer.cc",
      "new_id": "d15fa48727501541a15b3fe8bc07e278f7114412",
      "new_mode": 33188,
      "new_path": "src/gn/ninja_rust_binary_target_writer.cc"
    },
    {
      "type": "modify",
      "old_id": "b8a9532dfea87d7f75c0d3de83c0a189704fb066",
      "old_mode": 33188,
      "old_path": "src/gn/ninja_rust_binary_target_writer_unittest.cc",
      "new_id": "781ee7b674814fde8c364253c977012a807e0690",
      "new_mode": 33188,
      "new_path": "src/gn/ninja_rust_binary_target_writer_unittest.cc"
    },
    {
      "type": "modify",
      "old_id": "241e6fdc9183b4a904486f8c74b433a746f0b0b7",
      "old_mode": 33188,
      "old_path": "src/gn/rust_values_generator.cc",
      "new_id": "38588b43a6b6f031b28a42fadad835bcb7a4fb42",
      "new_mode": 33188,
      "new_path": "src/gn/rust_values_generator.cc"
    },
    {
      "type": "modify",
      "old_id": "9869138a353921fe84a1e3c0ed8727839dd06c40",
      "old_mode": 33188,
      "old_path": "src/gn/target.cc",
      "new_id": "5c2e721608ea82ef35fb88af91fc5897798619f6",
      "new_mode": 33188,
      "new_path": "src/gn/target.cc"
    },
    {
      "type": "modify",
      "old_id": "96664270cd973f6bd55db8f1fa8a05779780088b",
      "old_mode": 33188,
      "old_path": "src/gn/target.h",
      "new_id": "b86a893eaa032b4dbdf1cceb98f5385fc8f707d4",
      "new_mode": 33188,
      "new_path": "src/gn/target.h"
    },
    {
      "type": "modify",
      "old_id": "3936fd77d4419ac042e5cb9f6e3e761e79534cdf",
      "old_mode": 33188,
      "old_path": "src/gn/target_generator.cc",
      "new_id": "0111d72cbab8a20e25d248981280b870460ae111",
      "new_mode": 33188,
      "new_path": "src/gn/target_generator.cc"
    },
    {
      "type": "modify",
      "old_id": "c1ba4e8de4a50c64d94151ebba4fee068c458929",
      "old_mode": 33188,
      "old_path": "src/gn/test_with_scope.cc",
      "new_id": "06a87725f13de741dc6e70ec92f36bb27256beba",
      "new_mode": 33188,
      "new_path": "src/gn/test_with_scope.cc"
    },
    {
      "type": "modify",
      "old_id": "e43336c8356eb491e643cc68af7396046a7b89f2",
      "old_mode": 33188,
      "old_path": "src/gn/tool.cc",
      "new_id": "6dc46e701ac92c117e8f4182638e0b1e5382eea3",
      "new_mode": 33188,
      "new_path": "src/gn/tool.cc"
    }
  ]
}
