)]}'
{
  "commit": "55d68369e37da847ee8ac2be0358ef4969f1b194",
  "tree": "18396d3700ee27b293768b6bb508eb4bab392e61",
  "parents": [
    "9fb13ec1af33ecc9da8beb7dcea7bb25b4dbc241"
  ],
  "author": {
    "name": "Ignas Anikevicius",
    "email": "240938+aignas@users.noreply.github.com",
    "time": "Fri Apr 11 03:43:17 2025 +0900"
  },
  "committer": {
    "name": "GitHub",
    "email": "noreply@github.com",
    "time": "Thu Apr 10 18:43:17 2025 +0000"
  },
  "message": "fix(pypi): fixes to the marker evaluation and utils (#2767)\n\nThese are just bugfixes to already merged code:\n* Fix nested bracket parsing in PEP508 marker parser.\n* Fix the sys_platform constants, which I noticed in #2629 but they got\n  also pointed out in #2766.\n* Port some of python tests for requirement parsing and improve the\n  implementation. Those tests will be removed in #2629.\n* Move the platform related code to a separate file.\n* Rename `pep508_req.bzl` to `pep508_requirement.bzl` to follow the\n  convention.\n\n\nAll of the bug fixes have added tests.\n\nWork towards #2423.",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "21e05f2895c955cf3cb4a2572754367f2fe02546",
      "old_mode": 33188,
      "old_path": "python/private/pypi/BUILD.bazel",
      "new_id": "e0a2f20c14129851ed2a1103814ead8ffa8d1dd6",
      "new_mode": 33188,
      "new_path": "python/private/pypi/BUILD.bazel"
    },
    {
      "type": "modify",
      "old_id": "1d4c30753f58f2f933fcd225a9a1c9e5d96878fb",
      "old_mode": 33188,
      "old_path": "python/private/pypi/evaluate_markers.bzl",
      "new_id": "a0223abdc8bfe972bf217090d2639f68208972b3",
      "new_mode": 33188,
      "new_path": "python/private/pypi/evaluate_markers.bzl"
    },
    {
      "type": "modify",
      "old_id": "17d41871d188f378a28be68cf01ba29f7a3f1c91",
      "old_mode": 33188,
      "old_path": "python/private/pypi/pep508_env.bzl",
      "new_id": "265a8e9b99f0510e7808a1d0d1c92bad2650e708",
      "new_mode": 33188,
      "new_path": "python/private/pypi/pep508_env.bzl"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "381a8d7a083a3ce5fac31210b9e07969594b3ff4",
      "new_mode": 33188,
      "new_path": "python/private/pypi/pep508_platform.bzl"
    },
    {
      "type": "rename",
      "old_id": "618ffaf17a633e2b85910f9e422271914a10c2c7",
      "old_mode": 33188,
      "old_path": "python/private/pypi/pep508_req.bzl",
      "new_id": "11f2b3e8fa435a30e479da89c231461a6052d28a",
      "new_mode": 33188,
      "new_path": "python/private/pypi/pep508_requirement.bzl",
      "score": 81
    },
    {
      "type": "modify",
      "old_id": "b795db0591b3bf0bf925cb9a47cd391c71540c20",
      "old_mode": 33188,
      "old_path": "tests/pypi/pep508/BUILD.bazel",
      "new_id": "575f28ada62cae2b7733deaf0902e43d978a880f",
      "new_mode": 33188,
      "new_path": "tests/pypi/pep508/BUILD.bazel"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "7c81ea50fc7e1655902fb60ea84c1f4e41949eee",
      "new_mode": 33188,
      "new_path": "tests/pypi/pep508/requirement_tests.bzl"
    }
  ]
}
