)]}'
{
  "commit": "370e3fa6660fa2eb675199104cde9e9d02063cfd",
  "tree": "5ff9e8399be3a6ba7db48f20c00c86989634445f",
  "parents": [
    "b54a392c9a267a06058b663377282c9dcec6878e"
  ],
  "author": {
    "name": "Shawn O. Pearce",
    "email": "sop@google.com",
    "time": "Mon Jan 26 10:55:39 2009 -0800"
  },
  "committer": {
    "name": "Shawn O. Pearce",
    "email": "sop@google.com",
    "time": "Mon Jan 26 10:55:39 2009 -0800"
  },
  "message": "Remove the protobuf based HTTP upload code path\n\nNow that Gerrit2 has been released and the only supported upload\nprotocol is direct git push over SSH we no longer need the large\nand complex protobuf client library, or the upload chunking logic\nin gerrit_upload.py.\n\nSigned-off-by: Shawn O. Pearce \u003csop@google.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "0184e08ac0b7507bbb07485d6a465ccbe344aa37",
      "old_mode": 33188,
      "old_path": "Makefile",
      "new_id": "ea6aad5d8ab77c02e973d2d0c624d7833b867e78",
      "new_mode": 33188,
      "new_path": "Makefile"
    },
    {
      "type": "delete",
      "old_id": "58835553bf630128df91208de9d472dcb84f4e9e",
      "old_mode": 33188,
      "old_path": "codereview/__init__.py",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    },
    {
      "type": "delete",
      "old_id": "3fab2d430848eadcfd962ce4dd1c17f482dd44a0",
      "old_mode": 33188,
      "old_path": "codereview/need_retry_pb2.py",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    },
    {
      "type": "delete",
      "old_id": "b58cf6a867cab908f6070f7b7084da6f43b8c2a6",
      "old_mode": 33261,
      "old_path": "codereview/proto_client.py",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    },
    {
      "type": "delete",
      "old_id": "0896feba1c7b05c55d5b8298b221f357173cb47c",
      "old_mode": 33188,
      "old_path": "codereview/review_pb2.py",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    },
    {
      "type": "delete",
      "old_id": "ff91ee1f26d1ec5ed0ca115071a8601fa7a66abb",
      "old_mode": 33188,
      "old_path": "codereview/upload_bundle_pb2.py",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    },
    {
      "type": "delete",
      "old_id": "e69de29bb2d1d6434b8b29ae775ad8c2e48c5391",
      "old_mode": 33188,
      "old_path": "froofle/__init__.py",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    },
    {
      "type": "delete",
      "old_id": "e69de29bb2d1d6434b8b29ae775ad8c2e48c5391",
      "old_mode": 33188,
      "old_path": "froofle/protobuf/__init__.py",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    },
    {
      "type": "delete",
      "old_id": "e74cf25e5067bdfc65711588e14c93ffb4167536",
      "old_mode": 33188,
      "old_path": "froofle/protobuf/descriptor.py",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    },
    {
      "type": "delete",
      "old_id": "16873834d6dc44ebf0ed4f5aaa315beead80806c",
      "old_mode": 33188,
      "old_path": "froofle/protobuf/descriptor_pb2.py",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    },
    {
      "type": "delete",
      "old_id": "e69de29bb2d1d6434b8b29ae775ad8c2e48c5391",
      "old_mode": 33188,
      "old_path": "froofle/protobuf/internal/__init__.py",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    },
    {
      "type": "delete",
      "old_id": "2dd4c96e4a26b7c538b3794cb203b3cb9a16afde",
      "old_mode": 33188,
      "old_path": "froofle/protobuf/internal/decoder.py",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    },
    {
      "type": "delete",
      "old_id": "8b924b3e04f9316910211762522e5fdfd5a4b745",
      "old_mode": 33188,
      "old_path": "froofle/protobuf/internal/encoder.py",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    },
    {
      "type": "delete",
      "old_id": "26a26dcf525fba7f32cfaada6fe223ec66b9d29c",
      "old_mode": 33188,
      "old_path": "froofle/protobuf/internal/input_stream.py",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    },
    {
      "type": "delete",
      "old_id": "439789528b534a4042e14fadbab40cf539f91603",
      "old_mode": 33188,
      "old_path": "froofle/protobuf/internal/message_listener.py",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    },
    {
      "type": "delete",
      "old_id": "f62cd1c45eb560533b5e4ae016d7dc3814fa412b",
      "old_mode": 33188,
      "old_path": "froofle/protobuf/internal/output_stream.py",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    },
    {
      "type": "delete",
      "old_id": "aaf7a844de2edd732d3ccb09561ec38e1b470c37",
      "old_mode": 33188,
      "old_path": "froofle/protobuf/internal/type_checkers.py",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    },
    {
      "type": "delete",
      "old_id": "4d823c8db00fba97b3e2dc0a5f0c704e15c7783f",
      "old_mode": 33188,
      "old_path": "froofle/protobuf/internal/wire_format.py",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    },
    {
      "type": "delete",
      "old_id": "ed714853ac50b1d918c8f3cc7ea6f80bf174ffdc",
      "old_mode": 33188,
      "old_path": "froofle/protobuf/message.py",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    },
    {
      "type": "delete",
      "old_id": "e2abff04a9723326c1349ca7cb7e9b547994821e",
      "old_mode": 33188,
      "old_path": "froofle/protobuf/reflection.py",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    },
    {
      "type": "delete",
      "old_id": "3989216a105843a70d86e7816799b605c0ff93a0",
      "old_mode": 33188,
      "old_path": "froofle/protobuf/service.py",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    },
    {
      "type": "delete",
      "old_id": "bdd6bad5c7f51b6349b0804324473e4a4142b8ef",
      "old_mode": 33188,
      "old_path": "froofle/protobuf/service_reflection.py",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    },
    {
      "type": "delete",
      "old_id": "1c4cadfc6a42ccad93250f132382e73f23f76782",
      "old_mode": 33188,
      "old_path": "froofle/protobuf/text_format.py",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    },
    {
      "type": "delete",
      "old_id": "17112aac0dbc185e2446251ba28e46cfd9530913",
      "old_mode": 33261,
      "old_path": "gerrit_upload.py",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    },
    {
      "type": "modify",
      "old_id": "5d036c35de7db9acbb85c7ed85245457530fea5d",
      "old_mode": 33188,
      "old_path": "project.py",
      "new_id": "eebe96d5105f5cbd5e95e88f5a8dfc2613ca265b",
      "new_mode": 33188,
      "new_path": "project.py"
    }
  ]
}
