)]}'
{
  "commit": "4a262fae88bad2c4f59c7c60a97360c316e64946",
  "tree": "5a05e726f3032c17a1596013f07a908938a618f6",
  "parents": [
    "ae2eb7075fe12585c55d6bd6522cc688d20db94c"
  ],
  "author": {
    "name": "Ignas Anikevicius",
    "email": "240938+aignas@users.noreply.github.com",
    "time": "Sat Jul 20 14:04:16 2024 +0900"
  },
  "committer": {
    "name": "GitHub",
    "email": "noreply@github.com",
    "time": "Sat Jul 20 05:04:16 2024 +0000"
  },
  "message": "fix(pypi): fix the whl selection algorithm after #2069 (#2078)\n\nIt seems that a few things broke in recent commits:\n- We are not using the `MODULE.bazel.lock` file and it seems that it is\neasy to\n  miss when the components in the PyPI extension stop integrating well\ntogether. This happened during the switch to `{abi}_{os}_{plat}` target\n  platform passing within the code.\n- The logger code stopped working in the extension after the recent\nadditions\n  to add the `rule_name`.\n- `repo_utils.getenv` was always getting `PATH` env var on bazel `6.x`.\n\nThis PR fixes both cases and updates docs to serve as a better reminder.\nBy\nfixing the `select_whls` code and we can just rely on target platform\ntriples\n(ABI, OS, CPU). This gets one step closer to maybe supporting optional\n`python_version` which would address #1708. Whilst at it we are also\nadding\ndifferent status messages for building the wheel from `sdist` vs just\nextracting or downloading the wheel.\n\nTests:\n- Added more unit tests and brought them in line with the rest of the\ncode.\n- Checked manually for differences between the `MODULE.bazel.lock` files\nin our\n`rules_python` extension before #2069 and after this PR and there are no\n  differences except in the `experimental_target_platforms` attribute in\n`whl_library`. Before this PR you would see that we do not select any\nwheels\n  for e.g. `MarkupSafe` and we are always building from `sdist`.\n\nWork towards #260.",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "8a0792d3a57435ac64c0b9e3051aeddae466fcf4",
      "old_mode": 33188,
      "old_path": "CHANGELOG.md",
      "new_id": "8c03a790612a0cd0932349abd083b5e2e8dd5d2e",
      "new_mode": 33188,
      "new_path": "CHANGELOG.md"
    },
    {
      "type": "modify",
      "old_id": "95526e4252cd2c2b7572a0ff822cb2f82aef25d2",
      "old_mode": 33188,
      "old_path": "python/private/pypi/extension.bzl",
      "new_id": "82e580d3a2f938e618715dc121b0739923326d54",
      "new_mode": 33188,
      "new_path": "python/private/pypi/extension.bzl"
    },
    {
      "type": "modify",
      "old_id": "968c486bfb5eedb15dd34017b7e3c60a78209ced",
      "old_mode": 33188,
      "old_path": "python/private/pypi/parse_requirements.bzl",
      "new_id": "0cab1d708aaba2e027686e7577db1842f5db1aae",
      "new_mode": 33188,
      "new_path": "python/private/pypi/parse_requirements.bzl"
    },
    {
      "type": "modify",
      "old_id": "f453f92ccf0e32ee09a3547dbe8bb3a84610908d",
      "old_mode": 33188,
      "old_path": "python/private/pypi/whl_library.bzl",
      "new_id": "0419926c7a9480912a2322919be88bb35c54216f",
      "new_mode": 33188,
      "new_path": "python/private/pypi/whl_library.bzl"
    },
    {
      "type": "modify",
      "old_id": "bee795732a2046e7ea3c7f810d41791fcd014238",
      "old_mode": 33188,
      "old_path": "python/private/pypi/whl_target_platforms.bzl",
      "new_id": "bdc44c697a12dd411a059515a31ceac45961c6f5",
      "new_mode": 33188,
      "new_path": "python/private/pypi/whl_target_platforms.bzl"
    },
    {
      "type": "modify",
      "old_id": "18937895f5cfeeb423cc5e68f7bd40ce6dd73c0d",
      "old_mode": 33188,
      "old_path": "python/private/repo_utils.bzl",
      "new_id": "3c07027663e7318d3b5aa300552992a348cdb073",
      "new_mode": 33188,
      "new_path": "python/private/repo_utils.bzl"
    },
    {
      "type": "modify",
      "old_id": "1a7143b74751ac3e6cc5b6a609e623bea61bddc7",
      "old_mode": 33188,
      "old_path": "tests/pypi/parse_requirements/parse_requirements_tests.bzl",
      "new_id": "280dbd1a6c664911e353fe074d2bedf63ac3c0b2",
      "new_mode": 33188,
      "new_path": "tests/pypi/parse_requirements/parse_requirements_tests.bzl"
    },
    {
      "type": "modify",
      "old_id": "3fd80e3ee3476f596e9142ffa78d9f54243605cb",
      "old_mode": 33188,
      "old_path": "tests/pypi/whl_target_platforms/select_whl_tests.bzl",
      "new_id": "2994bd513fa86f58603383d280580416bfd8aed5",
      "new_mode": 33188,
      "new_path": "tests/pypi/whl_target_platforms/select_whl_tests.bzl"
    }
  ]
}
