)]}'
{
  "commit": "2ab842d36ce2b13fec3a12dd7cc7158c33e8f8be",
  "tree": "8e91fcbec4a65c2aad0dd772fe415b7bf7208339",
  "parents": [
    "64d9d6f59f645ae2c7870623e82ac8b1a9534e44"
  ],
  "author": {
    "name": "Ignas Anikevicius",
    "email": "ignas.anikevicius@woven-planet.global",
    "time": "Thu Feb 16 14:04:54 2023 +0900"
  },
  "committer": {
    "name": "GitHub",
    "email": "noreply@github.com",
    "time": "Wed Feb 15 21:04:54 2023 -0800"
  },
  "message": "refactor: starlark reimplementation of pip_repository (#1043)\n\nPreviously we were using pip_parse python scripts. This has a few drawbacks:\r\n\r\n* Requires system python to be present.\r\n* Usage of a Python script makes it harder to reason as there is an extra layer of abstraction.\r\n* Extending/reusing code between multi_pip_parse and pip_parse is hard.\r\n\r\nNow we use Starlark to parse the requirements.txt into requirements.bzl. ",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "2f5b92ebf176f24e0e661662c6cbde8d6b70df85",
      "old_mode": 33188,
      "old_path": "docs/pip.md",
      "new_id": "528abf737d807d3153693b03cf1b640c5e00f319",
      "new_mode": 33188,
      "new_path": "docs/pip.md"
    },
    {
      "type": "modify",
      "old_id": "7abb503c7803e3101f20aa663903565cf37b1619",
      "old_mode": 33188,
      "old_path": "docs/pip_repository.md",
      "new_id": "2ccdc64854cd4216686968f03b8bbe9064373dc0",
      "new_mode": 33188,
      "new_path": "docs/pip_repository.md"
    },
    {
      "type": "modify",
      "old_id": "9585195f1bea6beb3218712386d085b16c494684",
      "old_mode": 33188,
      "old_path": "examples/pip_parse_vendored/BUILD.bazel",
      "new_id": "56630e513d3ce76196abf45791a3cba234d2052f",
      "new_mode": 33188,
      "new_path": "examples/pip_parse_vendored/BUILD.bazel"
    },
    {
      "type": "modify",
      "old_id": "e13503ac6c5616327308d251a7a2f2a022c8fb88",
      "old_mode": 33188,
      "old_path": "examples/pip_parse_vendored/requirements.bzl",
      "new_id": "015df9340aa880519a36355698466f935201900e",
      "new_mode": 33188,
      "new_path": "examples/pip_parse_vendored/requirements.bzl"
    },
    {
      "type": "modify",
      "old_id": "bc0d570c5267529d446a6cbdd6b537fe96032f3b",
      "old_mode": 33188,
      "old_path": "python/extensions.bzl",
      "new_id": "01f731f14f345faac0f0da30b3e33d2e307958b0",
      "new_mode": 33188,
      "new_path": "python/extensions.bzl"
    },
    {
      "type": "modify",
      "old_id": "3d45aed61e17cfff3a795314d1954e9802244298",
      "old_mode": 33188,
      "old_path": "python/pip.bzl",
      "new_id": "3c06301306d6f13ddee55de365e858e8a96fd8d9",
      "new_mode": 33188,
      "new_path": "python/pip.bzl"
    },
    {
      "type": "modify",
      "old_id": "451e7fab70a603a24a15f9d649d4c41cda8cd223",
      "old_mode": 33188,
      "old_path": "python/pip_install/BUILD.bazel",
      "new_id": "281ccba6a99315d8d4e531fdc873272d1a7e38ba",
      "new_mode": 33188,
      "new_path": "python/pip_install/BUILD.bazel"
    },
    {
      "type": "modify",
      "old_id": "d5d93f3e9d995f6c81103c111a4036584e13eedc",
      "old_mode": 33188,
      "old_path": "python/pip_install/pip_repository.bzl",
      "new_id": "982d8536ba8784b3acf94f2efad8022caeaef088",
      "new_mode": 33188,
      "new_path": "python/pip_install/pip_repository.bzl"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "bf6a0536223928be09c1fe702c212dd479eb914c",
      "new_mode": 33188,
      "new_path": "python/pip_install/pip_repository_requirements.bzl.tmpl"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "462829d07460041e1c1819a041bc505e09a5e1be",
      "new_mode": 33188,
      "new_path": "python/pip_install/pip_repository_requirements_bzlmod.bzl.tmpl"
    },
    {
      "type": "modify",
      "old_id": "57644f612f57db16efe75a897b4b28b70d839ded",
      "old_mode": 33188,
      "old_path": "python/pip_install/private/srcs.bzl",
      "new_id": "f3064a3aecafe2cd868e56f40ac1d140ec5e8bef",
      "new_mode": 33188,
      "new_path": "python/pip_install/private/srcs.bzl"
    },
    {
      "type": "delete",
      "old_id": "804f36a946a1bee5fc7936a2155aca05294aeaa0",
      "old_mode": 33188,
      "old_path": "python/pip_install/tools/lock_file_generator/BUILD.bazel",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    },
    {
      "type": "delete",
      "old_id": "bbdfb4c5881ef24ac5f328dfc70570c44d56f777",
      "old_mode": 33188,
      "old_path": "python/pip_install/tools/lock_file_generator/__init__.py",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    },
    {
      "type": "delete",
      "old_id": "ed1488dd4543785ac0efdfb9dae99fa5d15ab84d",
      "old_mode": 33188,
      "old_path": "python/pip_install/tools/lock_file_generator/lock_file_generator.py",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    },
    {
      "type": "delete",
      "old_id": "be244b1c0776ed9af751080ac498b803eb440088",
      "old_mode": 33188,
      "old_path": "python/pip_install/tools/lock_file_generator/lock_file_generator_test.py",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    }
  ]
}
