)]}'
{
  "commit": "dce5120249f62bd04d2bafa48fd053732854e1ad",
  "tree": "f522182f0a1a3c667b0c50ceac9573626b5c6b8a",
  "parents": [
    "b40d96aba36d675c60b03424aa22f31c09e0ea4f"
  ],
  "author": {
    "name": "Ignas Anikevicius",
    "email": "240938+aignas@users.noreply.github.com",
    "time": "Wed May 28 00:47:49 2025 +0900"
  },
  "committer": {
    "name": "GitHub",
    "email": "noreply@github.com",
    "time": "Tue May 27 15:47:49 2025 +0000"
  },
  "message": "refactor: reimplement writing namespace pkgs in Starlark (#2882)\n\nWith this PR I would like to facilitate the implementation of the venv\nlayouts because we can in theory take the `srcs` and the `data` within\nthe `py_library` and then use the `expand_template` to write the extra\nPython files if the namespace_pkgs flag is enabled.\n\nThe old Python code has been removed and the extra generated files are\nwritten out with `bazel_skylib` `copy_file`.\n\nThe implicit `namespace_pkg` init files are included to `py_library`\nif the `site-packages` config flag is set to false and I think this\nmay help with continuing the implementation, but it currently is still\nnot working as expected (see comment).\n\nWork towards #2156",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "1772a3403ed0c47a8ef8cd7a17f8837ab1510e5d",
      "old_mode": 33188,
      "old_path": "python/config_settings/BUILD.bazel",
      "new_id": "ee15828fa55e8d924a1413b8b444956887a2f0f2",
      "new_mode": 33188,
      "new_path": "python/config_settings/BUILD.bazel"
    },
    {
      "type": "modify",
      "old_id": "84e0535289f4582f39266aac28ff669070047d8e",
      "old_mode": 33188,
      "old_path": "python/private/pypi/BUILD.bazel",
      "new_id": "e9036c3013aebd5424fa824e58df47336e90b1f9",
      "new_mode": 33188,
      "new_path": "python/private/pypi/BUILD.bazel"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "a21b846e76aff0f38f1bf47e4c0f47513ea353ec",
      "new_mode": 33188,
      "new_path": "python/private/pypi/namespace_pkg_tmpl.py"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "bf4689a5ea99de5cfcb92da7452db95b70f1b725",
      "new_mode": 33188,
      "new_path": "python/private/pypi/namespace_pkgs.bzl"
    },
    {
      "type": "modify",
      "old_id": "ea609bef9d00a268a1699a49e58f21c568b6f96e",
      "old_mode": 33188,
      "old_path": "python/private/pypi/whl_installer/arguments.py",
      "new_id": "57dae45ae9128ca9aee19f22a690a88476f28521",
      "new_mode": 33188,
      "new_path": "python/private/pypi/whl_installer/arguments.py"
    },
    {
      "type": "modify",
      "old_id": "600d45f940751946d4ba746427f75764da93a3bb",
      "old_mode": 33188,
      "old_path": "python/private/pypi/whl_installer/wheel_installer.py",
      "new_id": "a6a9dd042986f3d34dd63bd9a780b92631e6da9a",
      "new_mode": 33188,
      "new_path": "python/private/pypi/whl_installer/wheel_installer.py"
    },
    {
      "type": "modify",
      "old_id": "17ee3d3cfe9f1f13afe09d8e658c42ccbddb155f",
      "old_mode": 33188,
      "old_path": "python/private/pypi/whl_library.bzl",
      "new_id": "c271449b3dbd9eb1be3121717bebe91a4e87d386",
      "new_mode": 33188,
      "new_path": "python/private/pypi/whl_library.bzl"
    },
    {
      "type": "modify",
      "old_id": "e0c03a15056fe42f915f7e2a04c7698252d42334",
      "old_mode": 33188,
      "old_path": "python/private/pypi/whl_library_targets.bzl",
      "new_id": "3529566c490a61d3a562c225d61dee392d2cb41b",
      "new_mode": 33188,
      "new_path": "python/private/pypi/whl_library_targets.bzl"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "57f7962524dc7e0d6812751f62ae5330c68f206d",
      "new_mode": 33188,
      "new_path": "tests/pypi/namespace_pkgs/BUILD.bazel"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "7ac938ff17cfac052c8b8542996ae7717d1a1415",
      "new_mode": 33188,
      "new_path": "tests/pypi/namespace_pkgs/namespace_pkgs_tests.bzl"
    },
    {
      "type": "modify",
      "old_id": "040e4d765f3874bb3ad3af310c046344ba74f355",
      "old_mode": 33188,
      "old_path": "tests/pypi/whl_installer/BUILD.bazel",
      "new_id": "060d2bce62c14e0f4d843285400bff3300c73b21",
      "new_mode": 33188,
      "new_path": "tests/pypi/whl_installer/BUILD.bazel"
    },
    {
      "type": "modify",
      "old_id": "5538054a598f8634d704e3f3cbdeeb0f21803da0",
      "old_mode": 33188,
      "old_path": "tests/pypi/whl_installer/arguments_test.py",
      "new_id": "2352d8e48b680858ec0bc228d75b0d19dac23733",
      "new_mode": 33188,
      "new_path": "tests/pypi/whl_installer/arguments_test.py"
    },
    {
      "type": "delete",
      "old_id": "fbbd50926acda9736dbffedaf88889c209f8926e",
      "old_mode": 33188,
      "old_path": "tests/pypi/whl_installer/namespace_pkgs_test.py",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    },
    {
      "type": "modify",
      "old_id": "ef5a2483ab6e68c99bf97d42b1807bb3b8a70d44",
      "old_mode": 33188,
      "old_path": "tests/pypi/whl_installer/wheel_installer_test.py",
      "new_id": "7040b0cfd8e589e267cd655aae70d29de1bbfb7f",
      "new_mode": 33188,
      "new_path": "tests/pypi/whl_installer/wheel_installer_test.py"
    }
  ]
}
