)]}'
{
  "commit": "5cd6ecd4836ba03a61eff4b70f755b9049cc8a5f",
  "tree": "dfb0d7e72f7bc2981fcf7489f4188dd5d381dc56",
  "parents": [
    "20903cf59c6ea4bc63b6dd9e1354075335de99a8"
  ],
  "author": {
    "name": "Richard Levasseur",
    "email": "richardlev@gmail.com",
    "time": "Sun Oct 11 09:03:01 2026 +0000"
  },
  "committer": {
    "name": "GitHub",
    "email": "noreply@github.com",
    "time": "Sun Oct 11 09:03:01 2026 +0000"
  },
  "message": "refactor(executables): remove legacy _bootstrap_template attribute (#4243)\n\nRemove the implicit `_bootstrap_template` attribute from\n`py_executable`, as the\n`@bazel_tools//tools/python:python_bootstrap_template.txt` target it\nreferenced is being removed from Bazel.\n\nInstead of returning `None` from `_maybe_get_runtime_from_ctx` when the\nWindows sentinel runtime (`/_magic_pyruntime_sentinel_do_not_use`) is\npresent, retain the `PyRuntimeInfo` provider so\n`runtime.bootstrap_template` and `runtime.stub_shebang` are always used,\nand fall back to `--python_path` in `_get_interpreter_path`.\n\nAdditionally, update the Windows `runtime_env` sentinel runtime,\n`_create_venv_windows`, and bootstrap templates so resolving the\ninterpreter from `PATH` at runtime works with `rules_python`\u0027s venv\nbootstrap on Windows.",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "a393d90f40d57574a645fd9c4de31ae8f17c385c",
      "old_mode": 33188,
      "old_path": "python/private/BUILD.bazel",
      "new_id": "d28add4edf1de9737cf651be4520ad723292c91a",
      "new_mode": 33188,
      "new_path": "python/private/BUILD.bazel"
    },
    {
      "type": "modify",
      "old_id": "29500f9ad2b04b7712dd382f1e22aa28982b0f5a",
      "old_mode": 33188,
      "old_path": "python/private/py_executable.bzl",
      "new_id": "1ee926edde148fb48d311b5cf3db39be689506a4",
      "new_mode": 33188,
      "new_path": "python/private/py_executable.bzl"
    },
    {
      "type": "modify",
      "old_id": "482918c03844d78009bf0b03ce0e8aa59fdeaff2",
      "old_mode": 33188,
      "old_path": "python/private/python_bootstrap_template.txt",
      "new_id": "ee5aec9728f17f2437483e80dd185ed00b375b7a",
      "new_mode": 33188,
      "new_path": "python/private/python_bootstrap_template.txt"
    },
    {
      "type": "modify",
      "old_id": "de74900750666858c00dffd2287150522db3be89",
      "old_mode": 33188,
      "old_path": "python/private/runtime_env_toolchain.bzl",
      "new_id": "15bc50b8c1032151359bda5e77c94efaa17cf4ab",
      "new_mode": 33188,
      "new_path": "python/private/runtime_env_toolchain.bzl"
    },
    {
      "type": "modify",
      "old_id": "4597deebb5b2d739524fd00e7eec06f33b0e6bb0",
      "old_mode": 33188,
      "old_path": "python/private/site_init_template.py",
      "new_id": "33ac854c7dadc8e98084d8a4b84489b3eec5168b",
      "new_mode": 33188,
      "new_path": "python/private/site_init_template.py"
    }
  ]
}
