)]}'
{
  "commit": "ab51fe2bdb9d7f05287b686e75be7afc46d0c8f5",
  "tree": "c6c407439cdad5f9362cc77793e8880a259bab50",
  "parents": [
    "d2f310f19c8973e3d6ba8bf5d0524b53872d7482"
  ],
  "author": {
    "name": "Florian Schwabe",
    "email": "florian.schwabe@vector.com",
    "time": "Mon May 11 13:54:00 2026 +0200"
  },
  "committer": {
    "name": "Matthias Sohn",
    "email": "matthias.sohn@sap.com",
    "time": "Mon Jul 20 10:33:37 2026 +0200"
  },
  "message": "RevWalk: Use an incremental topological sorting algorithm\n\nWhen RevSort TOPO is given, instead of the previous combination of\nPendingGenerator-\u003eRewriteGenerator-\u003eTopoSortGenerator, a specialized\nGenerator is now used, which (given a commit-graph file is present)\ndoesn\u0027t need to fully process the entire history first\n\nThe new TopoSortPendingGenerator uses a modified version of the\nthree-walk algorithm used by git and performs the tasks previously done\nby the Pending-, Rewrite- and TopoSortGenerator:\n - The RevFilter is applied in the explore Phase\n - Rewriting commits (only when rewriteParents is set) is performed\n   after exploring, but before calculating in-degree numbers\n - Commits are only sorted topologically up to the lowest generation\n   number seen up to that point\n\nChange-Id: I7e38a8f866bb8f46e455aedd82c3985c256841e0\n",
  "tree_diff": [
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "4276f10543b4bbdc28f46f02a82d12afed912bc9",
      "new_mode": 33188,
      "new_path": "org.eclipse.jgit.test/tst/org/eclipse/jgit/revwalk/AbstractRevWalkWithCommitGraphTest.java"
    },
    {
      "type": "modify",
      "old_id": "c390405b520affed5208102f533fd362d07bb160",
      "old_mode": 33188,
      "old_path": "org.eclipse.jgit.test/tst/org/eclipse/jgit/revwalk/RevWalkCommitGraphTest.java",
      "new_id": "41b2c2432ccdde1abac5f0a3fd03462179033c0e",
      "new_mode": 33188,
      "new_path": "org.eclipse.jgit.test/tst/org/eclipse/jgit/revwalk/RevWalkCommitGraphTest.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "5886f5fb557fe15681f541b1e4850b08c4242bdd",
      "new_mode": 33188,
      "new_path": "org.eclipse.jgit.test/tst/org/eclipse/jgit/revwalk/RevWalkSortTopoWithCommitGraphTest.java"
    },
    {
      "type": "modify",
      "old_id": "926e45d93134690cb00358e6ff72e85b2e901fdc",
      "old_mode": 33188,
      "old_path": "org.eclipse.jgit/src/org/eclipse/jgit/revwalk/PendingGenerator.java",
      "new_id": "add181d3cc6489559c3046b8873132a9e9e83350",
      "new_mode": 33188,
      "new_path": "org.eclipse.jgit/src/org/eclipse/jgit/revwalk/PendingGenerator.java"
    },
    {
      "type": "modify",
      "old_id": "3248fe1196e073b2b4730ca90f618490c0ff8093",
      "old_mode": 33188,
      "old_path": "org.eclipse.jgit/src/org/eclipse/jgit/revwalk/RevCommit.java",
      "new_id": "17896543d7a3a7ce8381caa3afb704bb9522a2a5",
      "new_mode": 33188,
      "new_path": "org.eclipse.jgit/src/org/eclipse/jgit/revwalk/RevCommit.java"
    },
    {
      "type": "modify",
      "old_id": "4bfe2fda02164a8c83326460dbb4eebc6c2adb4f",
      "old_mode": 33188,
      "old_path": "org.eclipse.jgit/src/org/eclipse/jgit/revwalk/RevWalkUtils.java",
      "new_id": "2da163b719bba0699096c73d80d98f721dcdc725",
      "new_mode": 33188,
      "new_path": "org.eclipse.jgit/src/org/eclipse/jgit/revwalk/RevWalkUtils.java"
    },
    {
      "type": "modify",
      "old_id": "6854b6083dfafe8dd60478fb648d93ec14ff90cb",
      "old_mode": 33188,
      "old_path": "org.eclipse.jgit/src/org/eclipse/jgit/revwalk/StartGenerator.java",
      "new_id": "2d4cc09837f46aaec5d6c1480d62778e9ad6ccd6",
      "new_mode": 33188,
      "new_path": "org.eclipse.jgit/src/org/eclipse/jgit/revwalk/StartGenerator.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "ca6fcbb19526a8c0425fbd8b9b7393e80ae05575",
      "new_mode": 33188,
      "new_path": "org.eclipse.jgit/src/org/eclipse/jgit/revwalk/TopoExplorePhase.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "112d9e7954dcc15289082ef2fddd1696d01a25c6",
      "new_mode": 33188,
      "new_path": "org.eclipse.jgit/src/org/eclipse/jgit/revwalk/TopoInDegreePhase.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "6d8421c1d03e853c08fa86c7fb92c9d91ff7b5f8",
      "new_mode": 33188,
      "new_path": "org.eclipse.jgit/src/org/eclipse/jgit/revwalk/TopoPhase.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "5d43c5bb33882ee42584225d6294ff1d3df489cb",
      "new_mode": 33188,
      "new_path": "org.eclipse.jgit/src/org/eclipse/jgit/revwalk/TopoSortPendingGenerator.java"
    }
  ]
}
