)]}'
{
  "commit": "87140ecd02dd794a1acc173c48f0c8c52cd3a339",
  "tree": "6eba6370712f75656b2b773c55a7f27ae8275967",
  "parents": [
    "18d3f5618645fbebec703867364c3f2ac1102f1d"
  ],
  "author": {
    "name": "Filippo Valsorda",
    "email": "hi@filippo.io",
    "time": "Sat Mar 09 10:06:07 2024 +0100"
  },
  "committer": {
    "name": "Gopher Robot",
    "email": "gobot@golang.org",
    "time": "Fri Mar 15 15:56:33 2024 +0000"
  },
  "message": "sumdb/tlog: make NewTiles only generate strictly necessary tiles\n\nCurrently, NewTiles returns tiles for every partial tree size from\noldTreeSize to newTreeSize. However, if a log is only publishing\ncheckpoints at oldTreeSize and newTreeSize, the trees of sizes\noldTreeSize+1 to newTreeSize-1 are unverifiable, so those tiles are\nunnecessary. Also, NewTiles currently returns tiles that already exists\nas part of oldTreeSize, which are not new.\n\nThis has a significant performance and cost difference when uploading\ntiles individually to e.g. object storage.\n\nChange-Id: I92a5d76bc54e7022991e51997e793356ab5e7d5c\nReviewed-on: https://go-review.googlesource.com/c/mod/+/570295\nAuto-Submit: Filippo Valsorda \u003cfilippo@golang.org\u003e\nLUCI-TryBot-Result: Go LUCI \u003cgolang-scoped@luci-project-accounts.iam.gserviceaccount.com\u003e\nReviewed-by: Russ Cox \u003crsc@golang.org\u003e\nReviewed-by: Cherry Mui \u003ccherryyz@google.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "857d487551ce7d005e49363d17dbe6f9c7810a6a",
      "old_mode": 33188,
      "old_path": "sumdb/tlog/tile.go",
      "new_id": "37771c53101a3d616bfef2b357ca71ef1892d0d3",
      "new_mode": 33188,
      "new_path": "sumdb/tlog/tile.go"
    },
    {
      "type": "modify",
      "old_id": "e451a63dd51f9ae4afe444140ff85a7dc503afad",
      "old_mode": 33188,
      "old_path": "sumdb/tlog/tile_test.go",
      "new_id": "62b50b7367489ed4cd5927d9074deeceaed339ef",
      "new_mode": 33188,
      "new_path": "sumdb/tlog/tile_test.go"
    }
  ]
}
