)]}'
{
  "commit": "06eaaa29a908cf81ac14881de18799f1675beabf",
  "tree": "acd3d24038aab65c929e477e3d7da38c38f0ea33",
  "parents": [
    "24146a49cc34269d1dd7f7cd334fa80e0c8a2935"
  ],
  "author": {
    "name": "Richard Levasseur",
    "email": "richardlev@gmail.com",
    "time": "Sun Aug 24 14:44:05 2025 -0700"
  },
  "committer": {
    "name": "GitHub",
    "email": "noreply@github.com",
    "time": "Sun Aug 24 21:44:05 2025 +0000"
  },
  "message": "fix(bootstrap): handle when runfiles env vars don\u0027t point to current binary\u0027s runfiles (#3192)\n\nThe stage1 bootstrap script had a bug in the find_runfiles_root\nfunction where it would unconditionally use the RUNFILES_DIR et al\nenvironment variables if they were set.\n\nThis failed in a particular nested context: an outer binary\ncalling an inner binary when the inner binary isn\u0027t a data\ndependency of the outer binary (i.e. the outer doesn\u0027t contain\nthe inner in runfiles). This would cause the inner binary to\nincorrectly resolve its runfiles, leading to failures. Such\na case can occur if a genrule calls the outer binary, which has\nthe inner binary passed as an arg.\n\nThis change adds a check to validate that the script\u0027s entry point\nexists within the inherited RUNFILES_DIR before using it. If the\nentry point is not found, it proceeds with other runfiles discovery\nmethods. This matches the system_python runfiles discovery logic.\n\nFixes https://github.com/bazel-contrib/rules_python/issues/3187",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "fc3d7bbce3347a0ade3c2806bbb5542b6e04b2f9",
      "old_mode": 33188,
      "old_path": "CHANGELOG.md",
      "new_id": "03eccf881eabea47c45aaacc84b46306d73b7fbb",
      "new_mode": 33188,
      "new_path": "CHANGELOG.md"
    },
    {
      "type": "modify",
      "old_id": "62ded87337c9006fcc6ec9b23cdb4edd81efdb08",
      "old_mode": 33188,
      "old_path": "python/private/python_bootstrap_template.txt",
      "new_id": "495a52cfe99437264bb1f4b6d5b6927a1ba9f171",
      "new_mode": 33188,
      "new_path": "python/private/python_bootstrap_template.txt"
    },
    {
      "type": "modify",
      "old_id": "9927d4faa78334d4bd830205e43c07153086df35",
      "old_mode": 33188,
      "old_path": "python/private/stage1_bootstrap_template.sh",
      "new_id": "a984344647005b7732ad2d3455364af49ef0682c",
      "new_mode": 33188,
      "new_path": "python/private/stage1_bootstrap_template.sh"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "02835fb77be4febb9bcc8146edcca1ad13e890a0",
      "new_mode": 33188,
      "new_path": "tests/bootstrap_impls/bin_calls_bin/BUILD.bazel"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "e67b31dda30df9943733cb781dc7fe98fcc9faf6",
      "new_mode": 33188,
      "new_path": "tests/bootstrap_impls/bin_calls_bin/inner.py"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "19dac06eb780a26e5eccd440e9b57270f2324a31",
      "new_mode": 33188,
      "new_path": "tests/bootstrap_impls/bin_calls_bin/outer.py"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "433704e9ab4624f5191b2d93ba258453c88df766",
      "new_mode": 33261,
      "new_path": "tests/bootstrap_impls/bin_calls_bin/verify.sh"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "012daee05b3014636455ea336791488b24455b48",
      "new_mode": 33261,
      "new_path": "tests/bootstrap_impls/bin_calls_bin/verify_script_python.sh"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "460769fd04f1a9b0b9364e85202612929d3ae81b",
      "new_mode": 33261,
      "new_path": "tests/bootstrap_impls/bin_calls_bin/verify_system_python.sh"
    },
    {
      "type": "modify",
      "old_id": "adb8e75f71c3f907a237afb33ee27d050582e36b",
      "old_mode": 33188,
      "old_path": "tests/support/support.bzl",
      "new_id": "f8694629c1e1bb094456842827b7cc221e9f14fd",
      "new_mode": 33188,
      "new_path": "tests/support/support.bzl"
    }
  ]
}
