)]}'
{
  "commit": "0716ac536afa7c2c9d874d4f0d1ae8ff012f9c24",
  "tree": "8ea4904969e22d431638d3e697c0278392ec8a94",
  "parents": [
    "d15276b70ec585146ea6ad44419e23de6ae09e74"
  ],
  "author": {
    "name": "Antonio Barone",
    "email": "syntonyze@gmail.com",
    "time": "Fri Jan 26 11:44:17 2024 +0100"
  },
  "committer": {
    "name": "Antonio Barone",
    "email": "syntonyze@gmail.com",
    "time": "Thu Feb 08 22:11:46 2024 +0100"
  },
  "message": "Allow batch-fetch endpoint to delete refs\n\nCurrently ref deletion is only wired to apply-object.\n\nIf the apply-object call fails for any reason, when the client falls\nback to the fetch call, the receiving end would just attept to *fetch*\nthe deleted ref.\n\nThis is obviously destined to fail, since the remote ref does not exist\nanymore and thus cannot be fetched.\n\nChange this behaviour by hydrating the payload request with the\nadditional information of the ref deletion status.\n\nThe receving side can then opportunely schedule a deletion (rather than\na fetch) for the refs that have been deleted.\n\nNote that this change does not change the payload of the single fetch\nendpoint, so that back-compatibility can be provided during the rollout\nphase by temporarily switching off batch mode until all nodes have been\nmigrated to this version.\n\nBug: Issue 288965464\nChange-Id: I0c8591ee01caa80927ac16375ba8bd98d434ceb4\n",
  "tree_diff": [
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "264b87eb0b67d732f5658fa033e571fb7a98bbad",
      "new_mode": 33188,
      "new_path": "src/main/java/com/googlesource/gerrit/plugins/replication/pull/AutoValueTypeAdapterFactory.java"
    },
    {
      "type": "modify",
      "old_id": "a05842620bb845412d7f42b21b30addc8a4e9a0e",
      "old_mode": 33188,
      "old_path": "src/main/java/com/googlesource/gerrit/plugins/replication/pull/PullReplicationModule.java",
      "new_id": "ddc62586ec76078b537260ae897f0563b8df9bc7",
      "new_mode": 33188,
      "new_path": "src/main/java/com/googlesource/gerrit/plugins/replication/pull/PullReplicationModule.java"
    },
    {
      "type": "modify",
      "old_id": "baeb330cde63e85727f01beb7b898a40272b6fa5",
      "old_mode": 33188,
      "old_path": "src/main/java/com/googlesource/gerrit/plugins/replication/pull/ReplicationQueue.java",
      "new_id": "d9b47d3c9c74b1d9d0942fac84540f2f6b2e9e39",
      "new_mode": 33188,
      "new_path": "src/main/java/com/googlesource/gerrit/plugins/replication/pull/ReplicationQueue.java"
    },
    {
      "type": "modify",
      "old_id": "3a7d0ffb055947b814596be1c3e64c62424905b2",
      "old_mode": 33188,
      "old_path": "src/main/java/com/googlesource/gerrit/plugins/replication/pull/api/DeleteRefCommand.java",
      "new_id": "df139447084ce87d1ec4afd164faa315d3b5020b",
      "new_mode": 33188,
      "new_path": "src/main/java/com/googlesource/gerrit/plugins/replication/pull/api/DeleteRefCommand.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "acc40cb46197eebea97cc1a8b7581597ab3bd587",
      "new_mode": 33188,
      "new_path": "src/main/java/com/googlesource/gerrit/plugins/replication/pull/api/DeleteRefJob.java"
    },
    {
      "type": "modify",
      "old_id": "38d0cdd9cf55e220fec05ac0777207389a6edc1c",
      "old_mode": 33188,
      "old_path": "src/main/java/com/googlesource/gerrit/plugins/replication/pull/api/FetchAction.java",
      "new_id": "9cb928509dd498f99cef12946aa30343aa97a064",
      "new_mode": 33188,
      "new_path": "src/main/java/com/googlesource/gerrit/plugins/replication/pull/api/FetchAction.java"
    },
    {
      "type": "modify",
      "old_id": "09750454d48c48739a9c66f9a0de9a1c6901b92d",
      "old_mode": 33188,
      "old_path": "src/main/java/com/googlesource/gerrit/plugins/replication/pull/api/FetchJob.java",
      "new_id": "d30ba741b0aa7f8193e9857cea6f34480289a96f",
      "new_mode": 33188,
      "new_path": "src/main/java/com/googlesource/gerrit/plugins/replication/pull/api/FetchJob.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "cf1bd868671912f2ad3e0b005872d60ae1f0ab6e",
      "new_mode": 33188,
      "new_path": "src/main/java/com/googlesource/gerrit/plugins/replication/pull/api/HttpPayloadGsonProvider.java"
    },
    {
      "type": "modify",
      "old_id": "368e61a618359e6eede287c551ab561eb5cba871",
      "old_mode": 33188,
      "old_path": "src/main/java/com/googlesource/gerrit/plugins/replication/pull/api/PullReplicationFilter.java",
      "new_id": "9618168d047d16bb19edd049e0a1210a1ed73d5f",
      "new_mode": 33188,
      "new_path": "src/main/java/com/googlesource/gerrit/plugins/replication/pull/api/PullReplicationFilter.java"
    },
    {
      "type": "modify",
      "old_id": "414af372d83184047217783a8631118e0c4d6543",
      "old_mode": 33188,
      "old_path": "src/main/java/com/googlesource/gerrit/plugins/replication/pull/api/util/PayloadSerDes.java",
      "new_id": "d188247feefcd3780a9b3ea84725ed4cdce1d511",
      "new_mode": 33188,
      "new_path": "src/main/java/com/googlesource/gerrit/plugins/replication/pull/api/util/PayloadSerDes.java"
    },
    {
      "type": "modify",
      "old_id": "28c74c9df3c24495e80dc4b65ce586f392795f85",
      "old_mode": 33188,
      "old_path": "src/main/java/com/googlesource/gerrit/plugins/replication/pull/client/FetchApiClient.java",
      "new_id": "b90843501136384556026a468ace1bf10467af29",
      "new_mode": 33188,
      "new_path": "src/main/java/com/googlesource/gerrit/plugins/replication/pull/client/FetchApiClient.java"
    },
    {
      "type": "modify",
      "old_id": "614774dd3e2581921a8d5466cbefc45f9dfe3e42",
      "old_mode": 33188,
      "old_path": "src/main/java/com/googlesource/gerrit/plugins/replication/pull/client/FetchRestApiClient.java",
      "new_id": "cb036065c55329cb6ac5bb34801a9b3558d512f9",
      "new_mode": 33188,
      "new_path": "src/main/java/com/googlesource/gerrit/plugins/replication/pull/client/FetchRestApiClient.java"
    },
    {
      "type": "modify",
      "old_id": "abc96ca9f99c52cb34e1858d1bf37c613398a87b",
      "old_mode": 33188,
      "old_path": "src/main/resources/Documentation/config.md",
      "new_id": "3b76be96847b1b366cb58db3e20933a360e6cd2c",
      "new_mode": 33188,
      "new_path": "src/main/resources/Documentation/config.md"
    },
    {
      "type": "modify",
      "old_id": "84fee5560b3a798f3fc34a0b8936ae77456e526d",
      "old_mode": 33188,
      "old_path": "src/test/java/com/googlesource/gerrit/plugins/replication/pull/ReplicationQueueTest.java",
      "new_id": "f494c2f753f8c623f2b2d0a0870359ccc1e85b72",
      "new_mode": 33188,
      "new_path": "src/test/java/com/googlesource/gerrit/plugins/replication/pull/ReplicationQueueTest.java"
    },
    {
      "type": "modify",
      "old_id": "9dc736fc86bc27477ddd917c5db9f13c25b2ff18",
      "old_mode": 33188,
      "old_path": "src/test/java/com/googlesource/gerrit/plugins/replication/pull/api/BatchFetchActionTest.java",
      "new_id": "23b0fe124ba8d3afcbfd8210e7613e65400b923b",
      "new_mode": 33188,
      "new_path": "src/test/java/com/googlesource/gerrit/plugins/replication/pull/api/BatchFetchActionTest.java"
    },
    {
      "type": "modify",
      "old_id": "9653209927b2d9a6cab448d05d4f616ccda48ed1",
      "old_mode": 33188,
      "old_path": "src/test/java/com/googlesource/gerrit/plugins/replication/pull/api/FetchActionTest.java",
      "new_id": "a4642bab7fde9a2b830930e59b41e9c9a86adfe8",
      "new_mode": 33188,
      "new_path": "src/test/java/com/googlesource/gerrit/plugins/replication/pull/api/FetchActionTest.java"
    },
    {
      "type": "modify",
      "old_id": "b193cd7b9b7fdcfd40a712f2234199880572e86c",
      "old_mode": 33188,
      "old_path": "src/test/java/com/googlesource/gerrit/plugins/replication/pull/api/PullReplicationFilterTest.java",
      "new_id": "bc9e87090ef8d47614e23a27d15b554f3ef0a3d3",
      "new_mode": 33188,
      "new_path": "src/test/java/com/googlesource/gerrit/plugins/replication/pull/api/PullReplicationFilterTest.java"
    },
    {
      "type": "modify",
      "old_id": "3aa5b5a80c693a9d4e59278323d7b568494af61c",
      "old_mode": 33188,
      "old_path": "src/test/java/com/googlesource/gerrit/plugins/replication/pull/client/FetchRestApiClientBase.java",
      "new_id": "1c7b5534eb7a184bbbe8a7e533b8338344c0c646",
      "new_mode": 33188,
      "new_path": "src/test/java/com/googlesource/gerrit/plugins/replication/pull/client/FetchRestApiClientBase.java"
    },
    {
      "type": "modify",
      "old_id": "0f4bd3365839c89f727690e075f9a47891ca6bed",
      "old_mode": 33188,
      "old_path": "src/test/java/com/googlesource/gerrit/plugins/replication/pull/event/StreamEventListenerTest.java",
      "new_id": "c81820e72110d316bcdb47965dced0def4838de7",
      "new_mode": 33188,
      "new_path": "src/test/java/com/googlesource/gerrit/plugins/replication/pull/event/StreamEventListenerTest.java"
    }
  ]
}
