)]}'
{
  "commit": "78fc4de8ed6e8e5054f7e472784323b566831326",
  "tree": "1b4e80616a713b36a179c6a7bb26d7144c871a13",
  "parents": [
    "dd4f904bcad7c7d79ceb759f816794d616505097"
  ],
  "author": {
    "name": "Alex Eagle",
    "email": "alex@aspect.dev",
    "time": "Thu Nov 02 16:43:58 2023 -0700"
  },
  "committer": {
    "name": "GitHub",
    "email": "noreply@github.com",
    "time": "Thu Nov 02 23:43:58 2023 +0000"
  },
  "message": "feat(pip): provide pypi -\u003e whl target mapping in requirements.bzl (#1532)\n\nCurrently a BUILD file can load `all_whl_requirements` but then can\u0027t\ndetermine which one is associated with a given package installed by the\nuser.\nThis makes it impossible to build rules where the user can choose a\ngiven package and then override the wheel used, for example. @mattem and\nI are working at a client where we need this ability.\n\nThis PR makes a small, non-breaking refactoring to the generated\n`requirements.bzl` file so that this information is available in a new\n`all_whl_requirements_by_package` symbol.\n\nUsers can then do something like this:\n\n```\nload(\"@pip//:requirements.bzl\", \"all_whl_requirements_by_package\")\n\nsome_rule(\n  wheels \u003d dict(all_whl_requirements_by_package, **{\n    \"charset-normalizer\": \"@charset_1_2_3//:file\"\n  }),\n)\n```",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "02aca343a224dc3989fcf4b80aee707195fe165e",
      "old_mode": 33188,
      "old_path": "CHANGELOG.md",
      "new_id": "185ac37f578cd0c38d2790249e8219008fab44e0",
      "new_mode": 33188,
      "new_path": "CHANGELOG.md"
    },
    {
      "type": "modify",
      "old_id": "53208f55124d41e1f1d174aab119cd9aabb641d3",
      "old_mode": 33188,
      "old_path": "examples/pip_parse_vendored/requirements.bzl",
      "new_id": "48371ed0e4682b9b0aa95dea0cb501caf9e501f3",
      "new_mode": 33188,
      "new_path": "examples/pip_parse_vendored/requirements.bzl"
    },
    {
      "type": "modify",
      "old_id": "f018f65c71e1abb7b35c5e10c54d387d290cac57",
      "old_mode": 33188,
      "old_path": "python/pip_install/pip_repository.bzl",
      "new_id": "b841772f1e04ba8104928c15d1ed46f2ca35d755",
      "new_mode": 33188,
      "new_path": "python/pip_install/pip_repository.bzl"
    },
    {
      "type": "modify",
      "old_id": "92ea5bef5d9f83d82b6212d2d52a34577229a17e",
      "old_mode": 33188,
      "old_path": "python/pip_install/pip_repository_requirements.bzl.tmpl",
      "new_id": "23c83117bcb4af6fe7d1e9ed8df7cbebd9d7de61",
      "new_mode": 33188,
      "new_path": "python/pip_install/pip_repository_requirements.bzl.tmpl"
    },
    {
      "type": "modify",
      "old_id": "f5bb46feaa461fae22f19161d48df73beedaed04",
      "old_mode": 33188,
      "old_path": "python/private/bzlmod/pip_repository.bzl",
      "new_id": "e4e59b59d500c24fd39391f1232a3015244e2df7",
      "new_mode": 33188,
      "new_path": "python/private/bzlmod/pip_repository.bzl"
    },
    {
      "type": "modify",
      "old_id": "c72187c7ee9cb7569b99eca81321421586bfe0d7",
      "old_mode": 33188,
      "old_path": "python/private/bzlmod/requirements.bzl.tmpl",
      "new_id": "5ed1e49cc2278e71068846e5a1c051e38b37ff87",
      "new_mode": 33188,
      "new_path": "python/private/bzlmod/requirements.bzl.tmpl"
    }
  ]
}
