)]}'
{
  "commit": "3e7acaf3f886709d960f508cfe4d2883098fb160",
  "tree": "f0621566230a56191efe367efb393a12dd13157b",
  "parents": [
    "bcdd55d8956e22758fe3d866427e2dc3ebc4e31b"
  ],
  "author": {
    "name": "djasper",
    "email": "djasper@google.com",
    "time": "Wed Nov 18 14:20:04 2020 -0800"
  },
  "committer": {
    "name": "Copybara-Service",
    "email": "copybara-worker@google.com",
    "time": "Wed Nov 18 14:21:08 2020 -0800"
  },
  "message": "When filtering out undeclared headers during input discovery, do so right in\nthe include scanner. Filtering them out retroactively can lead to incorrect\nresults, e.g. in a situation like this:\na.h -\u003e b.h -\u003e c.h\n\nIf b.h is an existing file, but not a dependency of a.h, but c.h is, then the\nretroactive filtering can filter out b.h, but will not remove c.h.\n\nThis is can lead to inefficiencies and unexpected results.\n\nRELNOTES: None.\nPiperOrigin-RevId: 343155457\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "5bd0c8e7c6ee5bbb7ffaed028ab13e2391331473",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/includescanning/LegacyIncludeScanner.java",
      "new_id": "5dd4f423d1423530409e7bb84b64da5dbb565713",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/includescanning/LegacyIncludeScanner.java"
    },
    {
      "type": "modify",
      "old_id": "2aa4fbe4f41156c6e111a47b6fbe9313de0576f4",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/rules/cpp/BUILD",
      "new_id": "d866352eeec528f12b3b8e0a44c515f2a0fe339f",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/rules/cpp/BUILD"
    },
    {
      "type": "modify",
      "old_id": "3edb777ab8c37dc884b8030665a06275f88c856b",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/rules/cpp/CcCompilationContext.java",
      "new_id": "9e3c8c1db86b9998d782d85885b8957daac9e436",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/rules/cpp/CcCompilationContext.java"
    },
    {
      "type": "modify",
      "old_id": "5388813d5f6648044e371a1f583a6848064816ba",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/rules/cpp/CppCompileAction.java",
      "new_id": "770722acafc4afcb28d8cdc3e1f0931195d72f7e",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/rules/cpp/CppCompileAction.java"
    },
    {
      "type": "modify",
      "old_id": "a07b2b22109631c0473aee58c7da94e0f95e531e",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/rules/cpp/IncludeScanner.java",
      "new_id": "46a0768b1b72d6f6f9458167f0e9fc9f696ba551",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/rules/cpp/IncludeScanner.java"
    }
  ]
}
