)]}'
{
  "commit": "f5d3fdbe259c3e862194f532727b37edf1658f53",
  "tree": "5a20cccf9105db5876396a8f191bcea3c2b9ed61",
  "parents": [
    "fe31572f5190d728e88c651dfd8db1b89af154fc"
  ],
  "author": {
    "name": "Lee Rhodes",
    "email": "leerho@users.noreply.github.com",
    "time": "Thu Nov 12 12:35:57 2026 -0800"
  },
  "committer": {
    "name": "Lee Rhodes",
    "email": "leerho@users.noreply.github.com",
    "time": "Thu Nov 12 12:35:57 2026 -0800"
  },
  "message": "REQ: allocate the first compactor\u0027s storage on first use; add ensureCapacity()\n\nA new ReqSketch, an empty heapified one, and one after reset() no longer\nallocate the storage of the first compactor. It is allocated on the\nfirst update, or the first merge of a non-empty sketch, before anything\nelse changes, with the same size as before: twice the compactor\u0027s\nnominal capacity. ensureCapacity() allocates it up front. Results and\nthe serialized form are unchanged.\n\nmerge() now grows its levels before it changes totalN, min and max.\n\nReqSketchIterator.next() now skips any level without items, instead of\nassuming every level above level 0 has some.\n\nThis follows the lazy allocation convention agreed on dev@.\n\nCo-Authored-By: Claude Opus 5.5 \u003cnoreply@anthropic.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "151cd8ff387c62eaaf5d4ab5b9a81bd5dc7882de",
      "old_mode": 33188,
      "old_path": "src/main/java/org/apache/datasketches/req/ReqCompactor.java",
      "new_id": "71aa4dfdc2b65cee6a4101f922ede8fa08594266",
      "new_mode": 33188,
      "new_path": "src/main/java/org/apache/datasketches/req/ReqCompactor.java"
    },
    {
      "type": "modify",
      "old_id": "eda33acd217a070f528d5cb3a5895c4768844832",
      "old_mode": 33188,
      "old_path": "src/main/java/org/apache/datasketches/req/ReqSketch.java",
      "new_id": "0bf58d7f0de866c4d6ee777ef84be132fabee164",
      "new_mode": 33188,
      "new_path": "src/main/java/org/apache/datasketches/req/ReqSketch.java"
    },
    {
      "type": "modify",
      "old_id": "6ed9ce279f1268c70bf4f302964a0e9d04295195",
      "old_mode": 33188,
      "old_path": "src/main/java/org/apache/datasketches/req/ReqSketchBuilder.java",
      "new_id": "c37e9262996b43fe785fa299b87228c17850fa0d",
      "new_mode": 33188,
      "new_path": "src/main/java/org/apache/datasketches/req/ReqSketchBuilder.java"
    },
    {
      "type": "modify",
      "old_id": "8fc69d32dd2ebb610a291236190cf31d9c7ae7bd",
      "old_mode": 33188,
      "old_path": "src/main/java/org/apache/datasketches/req/ReqSketchIterator.java",
      "new_id": "c6c38278c88b9d325f19d9c88097983b5c360598",
      "new_mode": 33188,
      "new_path": "src/main/java/org/apache/datasketches/req/ReqSketchIterator.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "739a2b2aaeca7090843b2dab192e1d3fd32ae029",
      "new_mode": 33188,
      "new_path": "src/test/java/org/apache/datasketches/req/ReqLazyAllocationTest.java"
    }
  ]
}
