)]}'
{
  "commit": "5bfe4ba1e3411b08e3d2cfd8fed657d067c44043",
  "tree": "2bda60721929ab809d6fba218aff9c1ff27bd116",
  "parents": [
    "2e817e7cd1a549623e73ffaca90d337b5cbab79a"
  ],
  "author": {
    "name": "Googler",
    "email": "noreply@google.com",
    "time": "Wed Jan 22 17:41:22 2020 -0800"
  },
  "committer": {
    "name": "Copybara-Service",
    "email": "copybara-worker@google.com",
    "time": "Wed Jan 22 17:42:27 2020 -0800"
  },
  "message": "PythonUtils.GetInitPyFiles gains a Predicate\u003cPathFragment\u003e supplied at construction time so that other implementations can supply their own logic for determining when a file is a Python package defining __init__.py equivalent.\n\nAdds PythonSemantics.getEmptyRunFilesSupplier() and moves the static PythonUtils.GET_INIT_PY_FILES into the BazelPythonSemantics implementation in favor of PyExecutable calling the abstract getEmptyRunfilesSupplier() so that alternate PythonSemantics implementations can supply their own behavior.\n\nPiperOrigin-RevId: 291068951\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "7beb82367b36aaa2072fe807341005e375ea0193",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/bazel/rules/python/BazelPythonSemantics.java",
      "new_id": "eb8077c146a2bbb0cf38d5bf93180d8ddb25205f",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/bazel/rules/python/BazelPythonSemantics.java"
    },
    {
      "type": "modify",
      "old_id": "3f0a2dbe37338567397d9611d593387c40473dd8",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/rules/python/PyExecutable.java",
      "new_id": "c0dfafe0809fbcc648c66296d03d072bd934fd3e",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/rules/python/PyExecutable.java"
    },
    {
      "type": "modify",
      "old_id": "4225a4ccda2ae75bfc49ac862c78b975deb48bfb",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/rules/python/PythonSemantics.java",
      "new_id": "5a055ce2fdd9cf691ab958fdbf390e3128457916",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/rules/python/PythonSemantics.java"
    },
    {
      "type": "modify",
      "old_id": "a53ae8f34a87551f3b08cd6b2092985de6a6f4eb",
      "old_mode": 33188,
      "old_path": "src/main/java/com/google/devtools/build/lib/rules/python/PythonUtils.java",
      "new_id": "47843ef083423143b8bc58cb44c6bfbc1a57ab83",
      "new_mode": 33188,
      "new_path": "src/main/java/com/google/devtools/build/lib/rules/python/PythonUtils.java"
    }
  ]
}
