)]}'
{
  "commit": "43583d1fe84bc2b4daa1531e3dcf404dbcb98dda",
  "tree": "0e34571d394682586dac7801b1cf67185a7380b7",
  "parents": [
    "1388a89dc04374ed33c761e17b7747b85211c063"
  ],
  "author": {
    "name": "Richard Levasseur",
    "email": "rlevasseur@google.com",
    "time": "Thu Oct 10 20:12:55 2024 -0700"
  },
  "committer": {
    "name": "GitHub",
    "email": "noreply@github.com",
    "time": "Fri Oct 11 03:12:55 2024 +0000"
  },
  "message": "fix(bzlmod): let workspace-invoked python_register_toolchains to register toolchains (#2289)\n\nWhile migrating to bzlmod, users may have a hybrid build where WORKSPACE\ncontains\npython_register_toolchain() calls. Because these calls originate from\nWORKSPACE files,\nthe `native.register_toolchain` APIs are still available. At the same\ntime, we still\ndetect that bzlmod is enabled, and thus disable calling those functions.\nThe net\neffect is, users aren\u0027t able to register toolchains in such a hybrid\nsetup. At the\nsame time, because the code path is shared, we can\u0027t have the bzlmod\ntoolchain code\ntry to call them, as it\u0027ll fail.\n\nTo accomodate both cases, have the bzlmod toolchain code pass a special\narg so that\n`python_register_toolchains` knows to skip parts that don\u0027t apply to the\nbzlmod toolchain\ninvocation.\n\nThis was all unwound by some users and pointed out in a Slack thread. A\nfew people are\nmanually carrying an equivalent patch for a working hybrid mode.\n\nFixes https://github.com/bazelbuild/rules_python/issues/1675",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "67c3477443d800c7c2bd3465eb025d7d515541ad",
      "old_mode": 33188,
      "old_path": "CHANGELOG.md",
      "new_id": "3ea99a72b9e52fb905104020e5bbe3531be36897",
      "new_mode": 33188,
      "new_path": "CHANGELOG.md"
    },
    {
      "type": "modify",
      "old_id": "b4084fb7f4475e774efdb55cb9dfc7ad915cef47",
      "old_mode": 33188,
      "old_path": "python/private/BUILD.bazel",
      "new_id": "6fb4a1ccc2e72d563d0cc0c46a2d2a448de4ea1a",
      "new_mode": 33188,
      "new_path": "python/private/BUILD.bazel"
    },
    {
      "type": "modify",
      "old_id": "83bc43f92e136619aa21e71cef7d37461f06e859",
      "old_mode": 33188,
      "old_path": "python/private/python.bzl",
      "new_id": "12ab4bb48d03db1a883870689822bb29735b4f45",
      "new_mode": 33188,
      "new_path": "python/private/python.bzl"
    },
    {
      "type": "modify",
      "old_id": "d20e0496102322fa1db6a39a895126a2b8f4745e",
      "old_mode": 33188,
      "old_path": "python/private/python_register_toolchains.bzl",
      "new_id": "64b66d5a6f8eda21644f8a6352c455e20fffee8f",
      "new_mode": 33188,
      "new_path": "python/private/python_register_toolchains.bzl"
    }
  ]
}
