)]}'
{
  "commit": "d3fe8f4d529a715d94cc8c4d6afdff39e4bc518d",
  "tree": "621adac72c577dc9fb38c0197c071e1b05983d9b",
  "parents": [
    "393dab000d704a4364d085fa4c01ec7af176c8fa"
  ],
  "author": {
    "name": "Sylvain Defresne",
    "email": "sdefresne@chromium.org",
    "time": "Thu Jun 10 17:01:05 2021 +0200"
  },
  "committer": {
    "name": "Commit Bot",
    "email": "commit-bot@chromium.org",
    "time": "Thu Jun 10 15:27:53 2021 +0000"
  },
  "message": "Skip duplicated items when generating build command\n\nFor some of the compiler settings, duplicate items can be\nomitted (e.g. include_dirs, frameworks, libs, ...). The\norder of the item is important, so changing the storage\nto std::set\u003cT\u003e would not work (and this would break with\nrecursion anyway).\n\nInstead add support to the code generating to compiler\ncommand-line to skip over duplicated item when it make\nsense.\n\nBug: none\nChange-Id: I9096a3a804b5e9a3673c32f816b0e189eda4de84\nReviewed-on: https://gn-review.googlesource.com/c/gn/+/11701\nCommit-Queue: Sylvain Defresne \u003csdefresne@chromium.org\u003e\nReviewed-by: Brett Wilson \u003cbrettw@chromium.org\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "1d9d5b4f949309937512120cc565b2471dc82697",
      "old_mode": 33188,
      "old_path": "src/gn/compile_commands_writer.cc",
      "new_id": "74f69903076b852be6314855e0b5e108a37187e3",
      "new_mode": 33188,
      "new_path": "src/gn/compile_commands_writer.cc"
    },
    {
      "type": "modify",
      "old_id": "409e11d3a417ca6125d0743ba1401f06d73dbfc7",
      "old_mode": 33188,
      "old_path": "src/gn/config_values_extractors.cc",
      "new_id": "a369008f218d58802dcd397c5e441640f715ae71",
      "new_mode": 33188,
      "new_path": "src/gn/config_values_extractors.cc"
    },
    {
      "type": "modify",
      "old_id": "ae517610350f58f1e4ecb566e1b801161124fb16",
      "old_mode": 33188,
      "old_path": "src/gn/config_values_extractors.h",
      "new_id": "6479f2107cde284d33b4d893972fcb195f3656fd",
      "new_mode": 33188,
      "new_path": "src/gn/config_values_extractors.h"
    },
    {
      "type": "modify",
      "old_id": "7c520ad5566710c8517945ef35b994f60bb93dd0",
      "old_mode": 33188,
      "old_path": "src/gn/config_values_extractors_unittest.cc",
      "new_id": "860d87ca8b0a444328cb2ccafc76944ec3228a8a",
      "new_mode": 33188,
      "new_path": "src/gn/config_values_extractors_unittest.cc"
    },
    {
      "type": "modify",
      "old_id": "bbbf8313fb53cee56ea0ea9f0fef449d3135bac3",
      "old_mode": 33188,
      "old_path": "src/gn/desc_builder.cc",
      "new_id": "325735ab290356aec8d5b1754b8b55c9a456d518",
      "new_mode": 33188,
      "new_path": "src/gn/desc_builder.cc"
    },
    {
      "type": "modify",
      "old_id": "e4b0652075956664c2e0f08c5f5b896eeccdcab5",
      "old_mode": 33188,
      "old_path": "src/gn/ninja_binary_target_writer.cc",
      "new_id": "0b7e4ea44d1b2b35f58921d49e92c4fee24af4b8",
      "new_mode": 33188,
      "new_path": "src/gn/ninja_binary_target_writer.cc"
    },
    {
      "type": "modify",
      "old_id": "b52475f1163de7d11eac427329b0f9153e1aee77",
      "old_mode": 33188,
      "old_path": "src/gn/ninja_c_binary_target_writer.cc",
      "new_id": "c1432b29d29f9ef7cad40ddf836cd3a2e17344ed",
      "new_mode": 33188,
      "new_path": "src/gn/ninja_c_binary_target_writer.cc"
    },
    {
      "type": "modify",
      "old_id": "568c2b4e6a6e7d288831b7d2ee839718e7d967fe",
      "old_mode": 33188,
      "old_path": "src/gn/ninja_rust_binary_target_writer.cc",
      "new_id": "82149bfc4ec20c74f44b6b882abdff6df4f8dc47",
      "new_mode": 33188,
      "new_path": "src/gn/ninja_rust_binary_target_writer.cc"
    },
    {
      "type": "modify",
      "old_id": "05f4ccdf8ce8b818c6ecea523bf1266b2f50d9ad",
      "old_mode": 33188,
      "old_path": "src/gn/ninja_target_command_util.cc",
      "new_id": "b542fb26fdd083c8c587d1e11f2b3b6ca847cdaa",
      "new_mode": 33188,
      "new_path": "src/gn/ninja_target_command_util.cc"
    },
    {
      "type": "modify",
      "old_id": "00f9a77b0e07d84acb421a9f0cf3874cddd69306",
      "old_mode": 33188,
      "old_path": "src/gn/ninja_target_command_util.h",
      "new_id": "b0179a1cf13b20967810a2e70177d32a9c3f0b86",
      "new_mode": 33188,
      "new_path": "src/gn/ninja_target_command_util.h"
    },
    {
      "type": "modify",
      "old_id": "f6ea9d2a0aed23a8e3434e04b063662a3c9bf52f",
      "old_mode": 33188,
      "old_path": "src/gn/visual_studio_writer.cc",
      "new_id": "c47c910bd2e945d2d303f026fe643608386e8483",
      "new_mode": 33188,
      "new_path": "src/gn/visual_studio_writer.cc"
    }
  ]
}
