)]}'
{
  "commit": "c9c2768ac38040edc1d56f74a0db4f8538c7ef5f",
  "tree": "f4bd4ed6f799c02f8543766ce3c2b79fd90df15c",
  "parents": [
    "bdb2aa2e5c0ca435918037aa3568c0b0c4c9c1ab"
  ],
  "author": {
    "name": "Ignas Anikevicius",
    "email": "240938+aignas@users.noreply.github.com",
    "time": "Mon Mar 18 16:16:26 2024 +0900"
  },
  "committer": {
    "name": "GitHub",
    "email": "noreply@github.com",
    "time": "Mon Mar 18 07:16:26 2024 +0000"
  },
  "message": "internal(config_settings): make config_setting creation reusable (#1750)\n\nThe PR #1743 explored the idea of creating extra config settings for\neach target platform that our toolchain is targetting, however that has\na drawback of not being usable in `bzlmod` if someone built Python for\na platform that we don\u0027t provide a toolchain for and tried to use the\n`pip.parse` machinery with that by providing the\n`python_interpreter_target`. That is a niche usecase, but `rules_python`\nis a core ruleset that should only provide abstractions/helpers that\nwork in all cases or make it possible to extend things.\n\nThis explores a way to decouple the definition of the available\n`config_settings` values and how they are constructed by adding an extra\n`is_python_config_setting` macro, that could be used to declare the\nconfig settings from within the `pip.parse` hub repo. This makes the\nwork in #1744 to support whl-only hub repos more self-contained.\n\nSupersedes #1743.\n\n---------\n\nCo-authored-by: Richard Levasseur \u003crlevasseur@google.com\u003e",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "4f12ef4791e740b09fc15a4c691ad7631e45a4ca",
      "old_mode": 33188,
      "old_path": "python/config_settings/BUILD.bazel",
      "new_id": "a017f9767edfb6255480be47b89f50e883da862f",
      "new_mode": 33188,
      "new_path": "python/config_settings/BUILD.bazel"
    },
    {
      "type": "modify",
      "old_id": "9e6bbd6595d15d4ba6fdb9a8bc4f828be55bbb7a",
      "old_mode": 33188,
      "old_path": "python/config_settings/config_settings.bzl",
      "new_id": "f1d2ff0e0698a4710a6b699b4b5345b1fcbfedb7",
      "new_mode": 33188,
      "new_path": "python/config_settings/config_settings.bzl"
    },
    {
      "type": "modify",
      "old_id": "221c3b7a65d851247bea36ed62f447eb87bcf443",
      "old_mode": 33188,
      "old_path": "python/private/BUILD.bazel",
      "new_id": "d3d6e76a35603f820457be333fc5670c5fe14a05",
      "new_mode": 33188,
      "new_path": "python/private/BUILD.bazel"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "75f88de4ace407db396dc2d2fc815ddd7e2db191",
      "new_mode": 33188,
      "new_path": "python/private/config_settings.bzl"
    },
    {
      "type": "modify",
      "old_id": "61beb9cd40d77eb84b1251d26c1545ef99a40241",
      "old_mode": 33188,
      "old_path": "tests/config_settings/construct_config_settings_tests.bzl",
      "new_id": "b1b2e062f90a676ce13db0d20ea7ea120e0fa60f",
      "new_mode": 33188,
      "new_path": "tests/config_settings/construct_config_settings_tests.bzl"
    }
  ]
}
