)]}'
{
  "commit": "fd29d273e41180c56d691a67004ade742f7c7b2f",
  "tree": "073c39a9dafcd781a65361e9cdf5e94a4d6443c9",
  "parents": [
    "0d203a95d9ba6ec3365119fc709dc9eb3885f6d7"
  ],
  "author": {
    "name": "Richard Levasseur",
    "email": "richardlev@gmail.com",
    "time": "Wed May 28 23:37:23 2025 -0700"
  },
  "committer": {
    "name": "GitHub",
    "email": "noreply@github.com",
    "time": "Thu May 29 06:37:23 2025 +0000"
  },
  "message": "refactor: change site_packages_symlinks to venv_symlinks (#2939)\n\nThis generalizes the ability to populate the venv directory by adding\nand additional field,\n`kind`, which tells which directory of the venv to populate. A symbolic\nconstant is used\nto indicate which directory so that users don\u0027t have to re-derive the\nplatform and version\nspecific paths that make up the venv directory names.\n\nThis follows the design described by\nhttps://github.com/bazel-contrib/rules_python/issues/2156#issuecomment-2855580026\n\nThis also changes it to a depset of structs to make it more forward\ncompatible. A provider\nis used because they\u0027re slightly more memory efficient than regular\nstructs.\n\nWork towards https://github.com/bazel-contrib/rules_python/issues/2156",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "9655b90487c2a4c8568b4ef131fd34df23808f0e",
      "old_mode": 33188,
      "old_path": "CHANGELOG.md",
      "new_id": "4a6bdf0a96aba22bce00febc6bbe46889675d490",
      "new_mode": 33188,
      "new_path": "CHANGELOG.md"
    },
    {
      "type": "modify",
      "old_id": "917bd3800c718bbc118524485e5870da76bd92a4",
      "old_mode": 33188,
      "old_path": "python/features.bzl",
      "new_id": "b678a45241363a51aaa22af35f72cd9d3f749c2a",
      "new_mode": 33188,
      "new_path": "python/features.bzl"
    },
    {
      "type": "modify",
      "old_id": "98aba4eb2336ab1dc3e67de7ff08721cb038f5e2",
      "old_mode": 33188,
      "old_path": "python/private/attributes.bzl",
      "new_id": "ad8cba2e6cb31c4d17d877a484ae78cbe2dd435e",
      "new_mode": 33188,
      "new_path": "python/private/attributes.bzl"
    },
    {
      "type": "modify",
      "old_id": "a58a9c00a4eebd355c42b8efb4489c6de47b5cc6",
      "old_mode": 33188,
      "old_path": "python/private/common.bzl",
      "new_id": "e49dbad20ccf405744f9dce11bc0a7e4e0aaa522",
      "new_mode": 33188,
      "new_path": "python/private/common.bzl"
    },
    {
      "type": "modify",
      "old_id": "40ce63b3b07a887038458560b0991100c661b2e9",
      "old_mode": 33188,
      "old_path": "python/private/flags.bzl",
      "new_id": "710402ba68c404187b9968bd84d1feff1035f05d",
      "new_mode": 33188,
      "new_path": "python/private/flags.bzl"
    },
    {
      "type": "modify",
      "old_id": "24be8dd2ad0f7b6b05d1209ee25a1c2327377d1c",
      "old_mode": 33188,
      "old_path": "python/private/py_executable.bzl",
      "new_id": "7c3e0cb757ddef2ffc0b22ffa53042aabe1b15c0",
      "new_mode": 33188,
      "new_path": "python/private/py_executable.bzl"
    },
    {
      "type": "modify",
      "old_id": "d175eefb69fea0e901d8a1b70e0201a90df2d3ec",
      "old_mode": 33188,
      "old_path": "python/private/py_info.bzl",
      "new_id": "2a2f4554e3fb89e2a1b014d322c8a207d246f7bd",
      "new_mode": 33188,
      "new_path": "python/private/py_info.bzl"
    },
    {
      "type": "modify",
      "old_id": "fd9dad9f20e294dc8eb1e6badc8442f42088856f",
      "old_mode": 33188,
      "old_path": "python/private/py_library.bzl",
      "new_id": "fabc880a8daac73e9f73f02461793c65197c9675",
      "new_mode": 33188,
      "new_path": "python/private/py_library.bzl"
    }
  ]
}
