)]}'
{
  "log": [
    {
      "commit": "1ffd4a1f72a4ba13f2e3a3c544c1428caaa2e330",
      "tree": "afae0143659f5371cb3f2e00b3f590d3401dfbc0",
      "parents": [
        "d113c2721180bc0fe0da07950a4326e7bc4f5c3a"
      ],
      "author": {
        "name": "Jackson Toeniskoetter",
        "email": "jackdt@google.com",
        "time": "Tue Mar 31 14:40:08 2026 -0700"
      },
      "committer": {
        "name": "Jackson Toeniskoetter",
        "email": "jackdt@google.com",
        "time": "Wed Apr 01 15:37:38 2026 -0700"
      },
      "message": "In ViewFilter, if a revision cannot be found then throw an exception\ninstead of returning null.\n\nChange-Id: I9c00409c67688d319f6c440afa4ad73fb5ecb7a9\n"
    },
    {
      "commit": "d113c2721180bc0fe0da07950a4326e7bc4f5c3a",
      "tree": "4c05a3793819e47e4f109e29c8b75cd4d98f67b2",
      "parents": [
        "585d37dae3dab933127c7f1d67acb49d7181bb77",
        "b560a15ef9113934d66377e16de8beb95cbeb0b4"
      ],
      "author": {
        "name": "Terry Parker",
        "email": "tparker@google.com",
        "time": "Mon Feb 23 16:20:19 2026 -0800"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Feb 23 16:20:19 2026 -0800"
      },
      "message": "Merge \"Add missing commons-io dependency in BUILD file\""
    },
    {
      "commit": "b560a15ef9113934d66377e16de8beb95cbeb0b4",
      "tree": "d1eac13d0b5892e52e83c94a100ea7306f776b90",
      "parents": [
        "e8b6a00f55823e5a328e4ba2c7e51f048188a292"
      ],
      "author": {
        "name": "Terry Parker",
        "email": "tparker@google.com",
        "time": "Fri Feb 20 19:02:42 2026 -0800"
      },
      "committer": {
        "name": "Terry Parker",
        "email": "tparker@google.com",
        "time": "Mon Feb 23 16:05:57 2026 -0800"
      },
      "message": "Add missing commons-io dependency in BUILD file\n\nAdding //lib:commons-io to DEPS in java/com/google/gitiles/BUILD ensures\nthat archive generation (used by ArchiveServlet) has the required\nCountingOutputStream class available at runtime.\n\nThis fixes the NoClassDefFoundError occurring when using tgz links.\n\nChange-Id: Id7551f10385e01f6f9db6a73d1f5f877fd55c281\n"
    },
    {
      "commit": "585d37dae3dab933127c7f1d67acb49d7181bb77",
      "tree": "6eb016f7a7bf6ab74041dcc0fe522a26d30243c8",
      "parents": [
        "e8b6a00f55823e5a328e4ba2c7e51f048188a292"
      ],
      "author": {
        "name": "Nitzan Gur-Furman",
        "email": "nitzan@google.com",
        "time": "Sun Feb 22 23:32:21 2026 -0800"
      },
      "committer": {
        "name": "Nitzan Gur-Furman",
        "email": "nitzan@google.com",
        "time": "Sun Feb 22 23:32:21 2026 -0800"
      },
      "message": "Add @RunWith(JUnit4.class) to ArchiveServletTest.\n\nChange-Id: Ia2440b53ffe9cee645246dbc04ee31e64f1f2190"
    },
    {
      "commit": "e8b6a00f55823e5a328e4ba2c7e51f048188a292",
      "tree": "e96cadcac94a2c83a93c5ec7e4c58033b2556cef",
      "parents": [
        "080b31ca6b34b044d92697cad9b696c1cf43f1d8"
      ],
      "author": {
        "name": "Terry Parker",
        "email": "tparker@google.com",
        "time": "Fri Feb 20 18:33:41 2026 -0800"
      },
      "committer": {
        "name": "Terry Parker",
        "email": "tparker@google.com",
        "time": "Fri Feb 20 18:51:38 2026 -0800"
      },
      "message": "Fix 080b31c for updated protobuf dep and alpha ordering\n\n080b31c updated Gitiles dependencies but got merged too early\n\nThis change does the following:\n* Reports that diffutils moved from\ncom.googlecode.java-diff-utils:diffutils to\nio.github.java-diff-utils:java-diff-utils\n* Updates protobuf from 3.25.5 to 4.33.2\n* Alphabetizes the new common-io dependency\n\nChange-Id: I79c5ea1ee2081eba77cbfce9cd7762709666453e\n"
    },
    {
      "commit": "080b31ca6b34b044d92697cad9b696c1cf43f1d8",
      "tree": "1800c0e7bf718a7e6e10fe7b754e6521d6111e43",
      "parents": [
        "279e12103575b1c08223a8feacb1e62349a9b71f"
      ],
      "author": {
        "name": "Terry Parker",
        "email": "tparker@google.com",
        "time": "Fri Feb 13 16:28:39 2026 -0800"
      },
      "committer": {
        "name": "Terry Parker",
        "email": "tparker@google.com",
        "time": "Fri Feb 20 10:54:47 2026 -0800"
      },
      "message": "Update Gitiles dependencies\n\nThis area was overdue for attention, there are many bugs filed\nabout out-of-date Gitiles dependencies.\n\nGoogle uses its internal build system to build Gitiles, and we\nexperience friction in updating internally, since we need to update\nnot just Gitiles, but all internal uses of that dependency. With\nAI assistance I updated WORKSPACE library versions to match the\nones Google is using, if Google is using a newer version.\n\nAll of these updates involve stable APIs, no source file updates\nwere required.\n\nUpdating commons-compress added a new dependency on commons-io,\nso added that (thanks to David for finding that, Diffy for the\nwin!)\n\nTesting was to run `bazel test //...`, run the `tools/run.dev`\nscript and test localhost, and run `tools/maven/mvn.sh install`.\n\nI compared these updated versions with the versions in the JGit\nand Gerrit projects. All permutations are now there--Gitiles uses\na more recent version than the other two, JGit does, and Gerrit\ndoes. I can run the same update on JGit and Gerrit once this\nchange is in.\n\n+------------------------+-------------------+--------------------+\n| Library                | Old Version       | New Version        |\n+------------------------+-------------------+--------------------+\n| ASM (OW2)              | 9.2               | 9.9.1              |\n| Autolink               | 0.10.0            | 0.11.0             |\n| Byte Buddy             | 1.14.9            | 1.18.2             |\n| Commonmark             | 0.21.0            | 0.24.0             |\n| Commons Codec          | 1.16.0            | 1.18.0             |\n| Commons Compress       | 1.25.0            | 1.28.0             |\n| Commons IO             | \u003cnone\u003e            | 2.21.0             |\n| Commons Lang3          | 3.8.1             | 3.18.0             |\n| Commons Text           | 1.2               | 1.10.0             |\n| Diffutils              | 1.3.0             | 4.16               |\n| Error Prone Annot.     | 2.22.0            | 2.46.0             |\n| Gson                   | 2.10.1            | 2.13.2             |\n| Guava                  | 32.1.2-jre        | 33.5.0-jre         |\n| Guava Failureaccess    | 1.0.1             | 1.0.3              |\n| Hamcrest               | 2.2               | 3.0                |\n| ICU4J                  | 74.2              | 78.2               |\n| Jetty                  | 9.4.53.v20231009  | 9.4.57.v20241219   |\n| Junit                  | 4.12              | 4.13.2             |\n| Mockito                | 5.6.0             | 5.21.0             |\n| Objenesis              | 2.6               | 3.0.1              |\n| Protobuf               | 3.19.4            | 3.25.5             |\n| SLF4J                  | 1.7.36            | 2.0.17             |\n| Servlet API            | 3.1.0             | 4.0.1              |\n| Truth                  | 1.1               | 1.4.4              |\n| XZ                     | 1.9               | 1.11               |\n+------------------------+-------------------+--------------------+\n\nRelease-Notes: Stabilize WORKSPACE dependencies and fix checksums.\nChange-Id: Ic7dc1c8e96e8c1b26c80d259fb0b194ae4fc41f8\n"
    },
    {
      "commit": "279e12103575b1c08223a8feacb1e62349a9b71f",
      "tree": "c7ea6368ef04e04fed504b3900ad86a7fb86c8f7",
      "parents": [
        "f8b815b8b8e74136d0c1b45ae90bd4f66ba5916f",
        "6a98ba594edd03b030e70efa50097c00ea81d202"
      ],
      "author": {
        "name": "Terry Parker",
        "email": "tparker@google.com",
        "time": "Fri Feb 20 08:00:30 2026 -0800"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Feb 20 08:00:30 2026 -0800"
      },
      "message": "Merge \"Update Gitiles bazel version to 7.6.1 (matches JGit \u0026 Gerrit)\""
    },
    {
      "commit": "f8b815b8b8e74136d0c1b45ae90bd4f66ba5916f",
      "tree": "07121dd413ae2c99e870e4af5dc6756864f235bb",
      "parents": [
        "9b6c331d6f24db2d0faae016f801effb39a2de2f"
      ],
      "author": {
        "name": "David Ostrovsky",
        "email": "david@ostrovsky.org",
        "time": "Fri Feb 20 07:50:54 2026 +0100"
      },
      "committer": {
        "name": "David Ostrovsky",
        "email": "david@ostrovsky.org",
        "time": "Fri Feb 20 08:08:46 2026 +0100"
      },
      "message": "Add archive servlet integration test\n\nIn change Ic7dc1c8e96e an update of commons-compress from 1.25.0 to\n1.28.0 was attempted as part of a broader WORKSPACE dependency refresh.\n\ncommons-compress 1.28.0 introduces a runtime dependency on\ncommons-io (via org.apache.commons.io.output.CountingOutputStream),\nwhich is used by JGit\u0027s archive implementation\n(org.eclipse.jgit.archive.TarFormat / TgzFormat) when writing\ntar/tgz archives.\n\nGitiles\u0027 Bazel configuration does not automatically pull in Maven\ntransitive dependencies, so commons-io must be declared explicitly.\nThe attempted upgrade initially omitted this dependency, which would\nhave caused runtime failures when serving archive downloads, e.g.:\n\n  /\u003crepo\u003e/+archive/refs/heads/\u003cref\u003e.tar.gz\n\nresulting in:\n\n  java.lang.NoClassDefFoundError:\n    org/apache/commons/io/output/CountingOutputStream\n\nThis issue was identified during code review and corrected before\nsubmission, but the existing test suite did not exercise the archive\nservlet code path and therefore did not detect the breakage.\n\nAdd a servlet-level integration test for the archive endpoint that:\n\n* creates a small in-memory test repository\n* requests a .tar.gz archive via GitilesServlet\n* verifies HTTP 200 response\n* verifies response body is non-empty\n\nThis test executes ArchiveCommand.call() end-to-end and will fail\nwith NoClassDefFoundError if commons-io is missing from the runtime\nclasspath, preventing similar dependency regressions in future\ndependency updates.\n\nChange-Id: Ia9266aa6a6ca63b119e2216d8376ce0382ae6e44\n"
    },
    {
      "commit": "6a98ba594edd03b030e70efa50097c00ea81d202",
      "tree": "9e1838c066b45fe5afd06ac3988c8d858b415a59",
      "parents": [
        "9b6c331d6f24db2d0faae016f801effb39a2de2f"
      ],
      "author": {
        "name": "Terry Parker",
        "email": "tparker@google.com",
        "time": "Fri Feb 13 15:36:44 2026 -0800"
      },
      "committer": {
        "name": "Terry Parker",
        "email": "tparker@google.com",
        "time": "Fri Feb 13 15:42:35 2026 -0800"
      },
      "message": "Update Gitiles bazel version to 7.6.1 (matches JGit \u0026 Gerrit)\n\nAlso fix bazel\u0027s jdk tool registrations to match JGit \u0026 Gerrit.\n\nChange-Id: Iec03b7e28a8d20f49f27eb399c855cf4ffda7245\n"
    },
    {
      "commit": "9b6c331d6f24db2d0faae016f801effb39a2de2f",
      "tree": "1bdfbd91b35b9b17b69498a85c239fa2a5ca47fd",
      "parents": [
        "dd5fd429d1362bfc119c8bbd56235ff79c5662fd",
        "7fc3f09cab178489f80629a0c7940bb217fe7dc2"
      ],
      "author": {
        "name": "Theodore Dubois",
        "email": "tbodt@google.com",
        "time": "Wed Jan 28 14:49:35 2026 -0800"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Jan 28 14:49:35 2026 -0800"
      },
      "message": "Merge \"Make copy/pasting breadcrumbs produce valid file paths\""
    },
    {
      "commit": "7fc3f09cab178489f80629a0c7940bb217fe7dc2",
      "tree": "62a14d36153553e3888574e373568aba003d10a0",
      "parents": [
        "ff3f30bb02ae529910784caffa2499596af49997"
      ],
      "author": {
        "name": "Theodore Dubois",
        "email": "tbodt@google.com",
        "time": "Wed Jan 28 14:26:17 2026 -0800"
      },
      "committer": {
        "name": "Theodore Dubois",
        "email": "tbodt@google.com",
        "time": "Wed Jan 28 14:41:51 2026 -0800"
      },
      "message": "Make copy/pasting breadcrumbs produce valid file paths\n\nBug: 479282458\nChange-Id: Ice76ba569b6f2b224676a5ad861b10746a6a6964\n"
    },
    {
      "commit": "dd5fd429d1362bfc119c8bbd56235ff79c5662fd",
      "tree": "000b6204ff002884b024ab27b936172119f4d819",
      "parents": [
        "ff3f30bb02ae529910784caffa2499596af49997",
        "8c3d87d6123823de8e4f515538aa93ef37210cb1"
      ],
      "author": {
        "name": "Matthias Sohn",
        "email": "matthias.sohn@gmail.com",
        "time": "Wed Jan 28 13:34:47 2026 -0800"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Jan 28 13:34:47 2026 -0800"
      },
      "message": "Merge changes I0f844eaa,Ife1777c0\n\n* changes:\n  Fix dev server configuration\n  Format source code using google-java-format 1.24.0\n"
    },
    {
      "commit": "8c3d87d6123823de8e4f515538aa93ef37210cb1",
      "tree": "5530e2be9bee831ddc4f6d288c9fbe6e0188e4ac",
      "parents": [
        "318b4a1d0f29f7a1e1dd5d25f242c12e2f4f1e6f"
      ],
      "author": {
        "name": "Matthias Sohn",
        "email": "matthias.sohn@sap.com",
        "time": "Wed Jan 28 11:09:47 2026 +0100"
      },
      "committer": {
        "name": "Matthias Sohn",
        "email": "matthias.sohn@sap.com",
        "time": "Wed Jan 28 11:24:58 2026 +0100"
      },
      "message": "Fix dev server configuration\n\nThe config option gitiles.basePath was overloaded in [1]\nwhich broke the default behavior of gitiles in dev mode. It used to scan\nthe path configured via gitiles.basePath to find git repositories.\n\nWith [1] it now sets the servlet context path for gitiles to the value\nof the same option which doesn\u0027t work since the dev mode by default sets\ngitiles.basePath to the current working directory which doesn\u0027t work\nas a servlet context path which results in gitiles returning\n\"404 Not Found\" instead of showing the list of repositories found under\nbasePath.\n\nFix this by renaming the option introduced in [1] to\ngitiles.contextPath and adapt the documentation accordingly.\n\n[1] I1da95745d1bc8eaa7d5b204a942bcee0b6a027a8\n\nChange-Id: I0f844eaaaadbfd21161e04b915b541a534bbb4a6\n"
    },
    {
      "commit": "318b4a1d0f29f7a1e1dd5d25f242c12e2f4f1e6f",
      "tree": "81ad2c0152f4f02227e7ab4a503390ae7686d7b0",
      "parents": [
        "fbbb2969d93aef88173e0f0f59b77bd8b9f3d49d"
      ],
      "author": {
        "name": "Matthias Sohn",
        "email": "matthias.sohn@sap.com",
        "time": "Wed Jan 28 11:19:27 2026 +0100"
      },
      "committer": {
        "name": "Matthias Sohn",
        "email": "matthias.sohn@sap.com",
        "time": "Wed Jan 28 11:19:27 2026 +0100"
      },
      "message": "Format source code using google-java-format 1.24.0\n\nFollow gerrit which updated to google-java-format 1.24.0 in\nI8607721e9e83519fa2bab415462ace5255032068.\n\nChange-Id: Ife1777c0fea0cd002422960aed481bc46a955fb0\n"
    },
    {
      "commit": "ff3f30bb02ae529910784caffa2499596af49997",
      "tree": "a15f3bcda4eea72477246b31c35801204a29847e",
      "parents": [
        "91f481a71e22fe1438b6acea17f01f5e2422b965",
        "1b8d8e325823ed13b1ac97c8b68a28c0aac121b5"
      ],
      "author": {
        "name": "Adrià Vilanova Martínez",
        "email": "me@avm99963.com",
        "time": "Tue Jan 27 15:22:14 2026 -0800"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Jan 27 15:22:14 2026 -0800"
      },
      "message": "Merge \"Make metadata tables responsive\""
    },
    {
      "commit": "91f481a71e22fe1438b6acea17f01f5e2422b965",
      "tree": "d9f77226bcc4f87e5f046f5d5198c9c92dcff67c",
      "parents": [
        "2b3e80a07b5bd873b00610cb9113544e22dedcb8",
        "bff35388f5507d076b401592f2ce195ee04f6c9f"
      ],
      "author": {
        "name": "Xing Huang",
        "email": "xingkhuang@google.com",
        "time": "Tue Jan 27 08:32:20 2026 -0800"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Jan 27 08:32:20 2026 -0800"
      },
      "message": "Merge \"LogServlet: Handle HEAD symref to non-existent branch\""
    },
    {
      "commit": "2b3e80a07b5bd873b00610cb9113544e22dedcb8",
      "tree": "c95062bd5910d2080430ce82511d43bbfadbe16b",
      "parents": [
        "fbbb2969d93aef88173e0f0f59b77bd8b9f3d49d"
      ],
      "author": {
        "name": "Adrià Vilanova Martínez",
        "email": "me@avm99963.com",
        "time": "Thu Jan 15 22:11:16 2026 +0100"
      },
      "committer": {
        "name": "Adrià Vilanova Martínez",
        "email": "me@avm99963.com",
        "time": "Tue Jan 27 05:02:53 2026 -0800"
      },
      "message": "Clarify development server URL\n\nSince commit b1b8c4a45d5feb5bd11798a7d8469f7af0f04405, the dev server\nuses by default a base path equal to the absolute path of the current\ndirectory.\n\nThis CL clarifies this in the developer guide.\n\nChange-Id: I3c609736008760fad5748244960d82ca7595a590\n"
    },
    {
      "commit": "1b8d8e325823ed13b1ac97c8b68a28c0aac121b5",
      "tree": "31fadd1557b8608087b31452f5ad9bac8215f44c",
      "parents": [
        "fbbb2969d93aef88173e0f0f59b77bd8b9f3d49d"
      ],
      "author": {
        "name": "Adrià Vilanova Martínez",
        "email": "me@avm99963.com",
        "time": "Mon Dec 27 23:58:01 2021 +0100"
      },
      "committer": {
        "name": "Adrià Vilanova Martínez",
        "email": "me@avm99963.com",
        "time": "Tue Jan 27 04:39:22 2026 -0800"
      },
      "message": "Make metadata tables responsive\n\nIn commit 9b8a1eb9ea3a6945c82411ef6742637f11b6056f we made Gitiles\nresponsive so that it looked better in small screens. However, metadata\ntables weren\u0027t made responsive due to some accessibility challenges.\n\nThis CL finishes the responsiveness refactor by also making metadata\ntables responsive. We achieve this by changing the HTML table with a\ndescription list styled with a grid layout and subgrids[1] that adapt to\nthe screen width.\n\nWe use description lists since they are more semantically accurate for\nkey-value metadata pairs than tables.[2]\n\nThe linked bug contains screenshots that show the change.\n\n[1]: Subgrids achieved the Baseline status in 2023:\n     https://web.dev/articles/css-subgrid.\n[2]: https://html.spec.whatwg.org/multipage/grouping-content.html#the-dl-element\n\nBug: https://github.com/google/gitiles/issues/235\nChange-Id: I83026d0fbe7df7601a07be5e6122cdbb2d27ec81\n"
    },
    {
      "commit": "bff35388f5507d076b401592f2ce195ee04f6c9f",
      "tree": "acb9de58e85d3c5b9880c3c20c1427abac50fd2c",
      "parents": [
        "fbbb2969d93aef88173e0f0f59b77bd8b9f3d49d"
      ],
      "author": {
        "name": "Xing Huang",
        "email": "xingkhuang@google.com",
        "time": "Mon Jan 26 15:08:03 2026 -0600"
      },
      "committer": {
        "name": "Xing Huang",
        "email": "xingkhuang@google.com",
        "time": "Mon Jan 26 15:43:39 2026 -0600"
      },
      "message": "LogServlet: Handle HEAD symref to non-existent branch\n\nThe ObjectId of a Ref can be null. If HEAD is a symbolic ref to a\nnon-existent branch, headRef.getObjectId() will return null. The\ncurrent LogServlet code does not handle this, causing\nNullPointerException in RevWalk.\n\nThis issue is particularly common when a repo is created but nothing is\npushed yet; so a HEAD symmetry is created to point to refs/heads/main by default but lacks a commit SHA.\n\nTreat a HEAD ref with a null ObjectId as if the ref itself were null,\nreturning no view instead of throwing an internal error.\n\nChange-Id: I4fe85010db0694403770923fcdf957854e72cd34\nSigned-off-by: Xing Huang \u003cxingkhuang@google.com\u003e\n"
    },
    {
      "commit": "fbbb2969d93aef88173e0f0f59b77bd8b9f3d49d",
      "tree": "af445b18475c09ccf0fbb49ad0e3127410de40c3",
      "parents": [
        "97d418e1895740a2ee10eb54e6279ee762aaaa35"
      ],
      "author": {
        "name": "liyang",
        "email": "leeyoung.li@outlook.com",
        "time": "Tue Oct 07 21:53:01 2025 +0800"
      },
      "committer": {
        "name": "liyang",
        "email": "leeyoung.li@outlook.com",
        "time": "Wed Oct 15 12:23:26 2025 +0800"
      },
      "message": "Fix package WAR missing failureaccess JAR\n\nwebserver ClassNotFoundException due to WAR missing failureaccess JAR\nThe pkg_war() rule is missing this runtime dependency. Without it we get\nexceptions like:\njava.lang.ClassNotFoundException:\ncom.google.common.util.concurrent.internal.InternalFutureFailureAccess\n\nBug: Issue 450323474\nChange-Id: Icfb1f0e7625b5e64a01ca1552bc579b202ffb83a\n"
    },
    {
      "commit": "97d418e1895740a2ee10eb54e6279ee762aaaa35",
      "tree": "c9b12547365b9f6e78ea328d6d3461288393a6ba",
      "parents": [
        "b89ae948646625812b308b902a617ea63317a880"
      ],
      "author": {
        "name": "Antoine Musso",
        "email": "hashar@free.fr",
        "time": "Tue Sep 30 19:35:40 2025 +0200"
      },
      "committer": {
        "name": "Antoine Musso",
        "email": "hashar@free.fr",
        "time": "Tue Sep 30 19:39:56 2025 +0200"
      },
      "message": "Fix edit link when base URL has a path\n\nOn a setup having a path prefix such as `/r` the edit link woud be\nbroken because the prefix is stripped.\n\nThe reason is `URI.resolve()` is given an absolute path which strip the\npath from the base URI:\n\n  jshell\u003e new URI(\"https://example.org/r\").resolve(\"/admin/repos/edit\");\n                                      ^^\n  $2 \u003d\u003d\u003e https://example.org/admin/repos/edit\n                           ^^^____oops\n\nWhich is consistent with python `os.path`:\n\n  \u003e\u003e\u003e os.path.join(\u0027https://example.org/r\u0027, \u0027/admin/repos/edit\u0027);\n  \u0027/admin/repos/edit\u0027\n\nRemove the leading slash from the edit URI and update the test with the\nproper expected value.\n\nBug: https://phabricator.wikimedia.org/T405481\nChange-Id: I98e9d89cbc4850270f81b52665f2c8849f25c879\n"
    },
    {
      "commit": "b89ae948646625812b308b902a617ea63317a880",
      "tree": "5fa02b6b07c98990dfa8815cac0daeb79f3efa4f",
      "parents": [
        "c0094a91f4022f397396c486b5fdc6f814ae51af"
      ],
      "author": {
        "name": "Antoine Musso",
        "email": "hashar@free.fr",
        "time": "Tue Sep 30 19:31:35 2025 +0200"
      },
      "committer": {
        "name": "Antoine Musso",
        "email": "hashar@free.fr",
        "time": "Tue Sep 30 19:39:52 2025 +0200"
      },
      "message": "Tests: update path prefix in git urls\n\nWhen testing URLs, it is helpfull to distinguish between the base URL\n(which can contains a path prefix such as `/r`) and the application\npaths that is appended to it.\n\nUsing `/foo` is a bit meaningless, replace it by `/path-prefix` which is\nself describing and helps differentiating between the base URL and the\nrest of the path.\n\nChange-Id: I91230750cc67b7a2876e4da7779a0b0e20f62639\n"
    },
    {
      "commit": "c0094a91f4022f397396c486b5fdc6f814ae51af",
      "tree": "5c56efe245a2bbdf379d769c019e4157bf4e035a",
      "parents": [
        "0a3493eb4932ed3df16d253cbbb9f79709ace43c",
        "b1b8c4a45d5feb5bd11798a7d8469f7af0f04405"
      ],
      "author": {
        "name": "Adithya Chakilam",
        "email": "achakilam@nvidia.com",
        "time": "Tue Sep 09 09:13:41 2025 -0700"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Sep 09 09:13:41 2025 -0700"
      },
      "message": "Merge \"Add ability to set base path in dev mode\""
    },
    {
      "commit": "0a3493eb4932ed3df16d253cbbb9f79709ace43c",
      "tree": "f5dd4dd150b76f8e2b342703030259d4624120c2",
      "parents": [
        "38a4daf61095f7b28e6ca435a33f78f71c6b3fa4",
        "87218525f51613c0cb5e609f7afe424e6cf3e667"
      ],
      "author": {
        "name": "Matthias Sohn",
        "email": "matthias.sohn@gmail.com",
        "time": "Tue Sep 02 03:04:07 2025 -0700"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Sep 02 03:04:07 2025 -0700"
      },
      "message": "Merge \"Update JGit to d6923d6994df\""
    },
    {
      "commit": "87218525f51613c0cb5e609f7afe424e6cf3e667",
      "tree": "bdd46a66321deee7ba777cc196bc1fa757ef33a0",
      "parents": [
        "06b65fdf46c7bae589e11151ca834e8bd8319e86"
      ],
      "author": {
        "name": "Matthias Sohn",
        "email": "matthias.sohn@sap.com",
        "time": "Tue Sep 02 10:22:41 2025 +0200"
      },
      "committer": {
        "name": "Matthias Sohn",
        "email": "matthias.sohn@sap.com",
        "time": "Tue Sep 02 11:00:09 2025 +0200"
      },
      "message": "Update JGit to d6923d6994df\n\n$ git log --oneline --no-merges f693c0478...d6923d699\nacd1eff8b PendingGenerator: drop only buffers loaded in the generator\n7f9eeb969 Prepare 7.4.0-SNAPSHOT builds\n3ce0a6bc8 JGit v7.4.0.202508261455-rc1\n0ba68dfb0 Update apache sshd to 2.16.0\n8fd4cf3de Do not include 3rd party dependencies in features\ne109bad94 Ensure pack files are closed after git.close()\n38aaf90f9 Prepare 7.4.0-SNAPSHOT builds\ncad966d95 JGit v7.4.0.202508191000-m3\n7e2935241 Update mockito to 5.19.0\nbcbb2d6ce Update jetty to 12.1.0\n9b0bbd744 Update org.assertj:assertj-core to 3.27.4\ndeefd465a Update bytebuddy to 1.17.7\n610d7e191 util.Iterators: suppress warning about object arrays\n93e87dfc7 util.Iterators: private constructor for utility class\n901b651ec pgm: new command for the object size index\n2b64b5c6f WindowCursor: honor pack.useObjectSizeIndex\n6ebd2f5d7 Prevent CommitGraphWriter.write() from closing its stream\n1c0df9426 Make CancellableDigestOutputStream extend FilterOutputStream\n5155683dc Shortcut PackWriter reuse selection when possible\n0a32120fa Update org.apache.commons:commons-compress to 1.28.0\na762badfc SmartHttpFetchConnection: suppress errors on close()\n01123ee70 Mark Git(Repository repo, boolean closeRepo) public\nee304e465 Use volatiles for bitmap and revIndex in Pack\n37d1a65f0 Fix performance regression in Pack.idx()\n3a89c4e49 Don\u0027t use Yoda style conditions to improve readability\n0efc9c367 Use LocalObjectToPack representation more\nd9aba160b Use representation from LocalObjectToPack if possible\n6c8d6e299 Avoid conditional in LocalObjectRepresentation.wasDeltaAttempted\nd9de5e619 Prepare 7.4.0-SNAPSHOT builds\nee0b62d24 Update commons-lang3 to 3.18.0\n0962202b2 Update commons-io to 2.20.0\n16554a89d Update commons-codec to 1.19.0\nfb6b24142 JGit v7.4.0.202507290921-m2\ne02e00109 Add 4.37 target platform for Eclipse IDE 2025-09\nca6d673d5 Use chunked encoding when uploading LFS objects\n154032c2b Add Bundle-SCM header to OSGi manifests\nc86cdcb96 WindowCursor: Use the object size index when possible\na673f022a GC: Write object size index if config says so\nb0e06f3b0 MergeToolTest: update expected error from the tool\n160b81c0b Add dash license check for 3rd party dependencies\nd9ac2f31e ObjectDirectoryPackParser: Write object-size index with the pack\n8929300aa PackInserter: write object-size index with the pack\n427af1262 Pack: getter for the indexed object size (when available)\n8ab3e5324 Prepare 5.13.5-SNAPSHOT builds\n85c14b4da JGit v5.13.4.202507202350-r\n896d07370 AmazonS3: Do not accept DOCTYPE and entities\n8d30b5a75 ManifestParser: Do not accept DOCTYPE and entities\n518cc54f8 AdvertisedRequestValidator: fix WantNotValidException caused by race\n0d835f824 Prepare 5.13.4-SNAPSHOT builds\n36fef211d Fix packaging build\n918fdd774 [releng] Fix maven builds on JVM 21 and with newer git on MacOS\n010858e24 Fix missing import of org.eclipse.jetty:jetty-security:12.0.23\nee5eb8eee Restore WORKSPACE and Bazel 7.6.1\nee42baf81 Prepare 7.4.0-SNAPSHOT builds\n0653d24c9 JGit v7.4.0.202507080956-m1\nb943e49d2 Fix JGit version exposed in bazel module\na35be22e0 MODULE.bazel: Include version in the jgit module\nff407588c Update jetty to 12.0.23\nefe2e4d44 Update bytebuddy to 1.17.6\nc3f354edc Lock reftable auto-refresh to ensure consistency\n426a6c70c DfsObjDatabase.PackList: Remove PackListImpl subclass\n783b4a509 DfsObjDatabase.PackList: Remove dirty flag setters\n6f5e28454 DfsPackFile: Delete #getIndexedObjectSize for ObjectId\n7c7f7d32e MultiPackIndexLoader: Add NON-NLS annotation to message\n9fb0c4fca ChangedPathFilter: Suppress nls warnings in toString\ne3c003cac JGitText.properties: Use {n} instead %s in messages\nf52f450f9 DfsReader: Reuse index position when looking up object size\na0baaa03b DfsReader: Use new findPack instead of findPackWithObject\n1ffcbb98d DfsReader: return idx position when looking up object in packs\nf6bfc81cf DfsReader: Handle correctly invalid object-size indexes\n3f3f3b5a6 Fix: Close the \"preserved\" PackDirectory\neb82500ca Update jetty to 12.0.22\n5606070e1 Update bouncycastle to 1.81\ne043079ce Update last jgit release to 7.3.0.202506031305-r\nbceef6b91 Prepare 7.4.0-SNAPSHOT builds\n714830a3d Prepare 7.3.1-SNAPSHOT builds\n22e8820c6 JGit v7.3.0.202506031305-r\nf004052ae Update maven plugins\n1c7289509 Use the same ordering/locking in delete() as C git\n5ed259fac Prepare 7.3.0-SNAPSHOT builds\n340f99cab JGit v7.3.0.202505281347-rc1\nc9a1362b7 Prepare 7.1.2-SNAPSHOT builds\n7799eb070 JGit v7.1.1.202505221757-r\n1524db3c3 Prepare 7.0.2-SNAPSHOT builds\n4de5c79bc JGit v7.0.1.202505221510-r\nfc6fd5690 Prepare 6.10.2-SNAPSHOT builds\n9d12b89dd JGit v6.10.1.202505221210-r\n3e0eedc57 AmazonS3: Do not accept DOCTYPE and entities\n07d00f6df ManifestParser: Do not accept DOCTYPE and entities\nf5071dbfb Update mockito to 5.18.0\ne9178a803 Update Jetty to 12.0.21\n30b9c446f Update com.google.code.gson:gson to 2.13.1\n1d83aa4bb Prepare 7.3.0-SNAPSHOT builds\n34ba6ce64 JGit v7.3.0.202505211123-m3\n98494cd1a FS.getFileStoreAttributes: cancel failed task executed asynchronously\nca665a4f0 DfsReader/PackFile: Move represention to the packfile\n9b27a961f DfsPackFile: Remove unused getObjectCount method\n8fd6f34b6 Prepare 7.2.2-SNAPSHOT builds\nc212ced38 JGit v7.2.1.202505142326-r\nc6fc36070 AmazonS3: Do not accept DOCTYPE and entities\ndab4f52d4 ManifestParser: Do not accept DOCTYPE and entities\n4919c2b70 FileReftableStack: ensure new reftable files aren\u0027t missed on NFS\nf96e5e3b4 Encapsulate layout of reftable stack in FileReftableStack\nb5696bc08 Prepare 7.3.0-SNAPSHOT builds\n1a782ef7c JGit v7.3.0.202505070700-m2\nd0e7071b1 DfsInserter: Remove checkExisting setter and parameter\n32e0e27be PlotRefComparator: fix #timeof\n43d3bc6d6 PlotWalk: Replace call to deprecated method in PersonIdent\ne74771cb9 midx: Fix license header from Google Inc. to LLC\n0595aa0f0 Remove option to enable bzlmod\n991891570 Update bazel to 8.2.1\nf47c13fd1 Update bazel to 7.6.1\nb26ff8c5d MODULE.bazel: Move dependencies from WORKSPACE to bazel modules\n070757ab0 Update commons-io:commons-io to 2.19.0\n0a8a71825 Update com.google.code.gson:gson to 2.13.0\n2cef1a59f PackExt: Add value for the multipack index\n9b51ec8f2 MultiPackIndex: Add and implement #resolve() method\nf627e8914 MultiPackIndexWriter: Handle empty packs\n670c17b80 MultiPackIndexWriter: return bytes written\n7e574e388 MultiPackIndexV1: Calculate memsize with long\ncd7c9c1f0 Prepare 7.3.0-SNAPSHOT builds\ndb3cbe33a MultiPackIndexV1: Reorder methods and add NON-NLS annotations\nb02e6c3e0 MultiPackIndex: add #getMemorySize() method\nc2a8e0026 midx: reader for the multipack index\n2d7c43d18 JGit v7.3.0.202504081226-m1\nd3ecdce86 Update mockito to 5.17.0\n3cc101a0d Update jetty to 12.0.19\n070a8b7c0 Update bytebuddy to 1.17.5\n35d433add DfsPackFile.PackIndexes: pass primary index to reverse index\n324f75ea2 tools/BUILD: Make AssertEqualsArgumentOrder a warning\n32f659500 PullCommandTest: remove unnecessary method reference\n46a637878 Fix package name of spring boot JarLauncher class in jgit.sh\n8a05d5e0a tests: avoid assertEquals on same instance\n4957eeb00 Update bytebuddy to 1.17.3\n06775c667 Update mockito to 5.16.1\n7a6469b1c Update jna to 5.17.0\n06b5d2ccf Update jetty to 12.0.18\n\nChange-Id: I5a6f40726ab9c418991ed5bbf5358071bb44548e\n"
    },
    {
      "commit": "b1b8c4a45d5feb5bd11798a7d8469f7af0f04405",
      "tree": "c5a35f5747691950c25b5c5cd61fff1cde67b6d5",
      "parents": [
        "06b65fdf46c7bae589e11151ca834e8bd8319e86"
      ],
      "author": {
        "name": "Adithya Chakilam",
        "email": "achakilam@nvidia.com",
        "time": "Wed Aug 06 23:12:38 2025 -0500"
      },
      "committer": {
        "name": "Martin Fick US",
        "email": "mfick@nvidia.com",
        "time": "Fri Aug 15 13:16:25 2025 -0700"
      },
      "message": "Add ability to set base path in dev mode\n\nChange-Id: I1da95745d1bc8eaa7d5b204a942bcee0b6a027a8\n"
    },
    {
      "commit": "38a4daf61095f7b28e6ca435a33f78f71c6b3fa4",
      "tree": "0771c83160fdd7a18f269cc1dc38713452873e56",
      "parents": [
        "06b65fdf46c7bae589e11151ca834e8bd8319e86"
      ],
      "author": {
        "name": "Matthias Sohn",
        "email": "matthias.sohn@sap.com",
        "time": "Tue Jun 24 15:50:29 2025 +0200"
      },
      "committer": {
        "name": "Matthias Sohn",
        "email": "matthias.sohn@sap.com",
        "time": "Tue Jun 24 07:44:38 2025 -0700"
      },
      "message": "Document that compressed archive of a folder can be downloaded\n\nadd examples specifying version using\n- a ref\n- a commit id\n\nChange-Id: I9a519f4674ecbf0a4b632e240cd203a1150d4770\n"
    },
    {
      "commit": "06b65fdf46c7bae589e11151ca834e8bd8319e86",
      "tree": "4831ebb686033ac5a2ec0924341618f9b32328b1",
      "parents": [
        "6b3b1349915dac982c92cc73876e7a08cd69c33f"
      ],
      "author": {
        "name": "Xing Huang",
        "email": "xingkhuang@google.com",
        "time": "Mon Mar 10 12:50:09 2025 -0500"
      },
      "committer": {
        "name": "Xing Huang",
        "email": "xingkhuang@google.com",
        "time": "Mon Mar 24 13:17:32 2025 -0500"
      },
      "message": "LogServlet: enable Commit Graph and Bloom Filter serving\n\nThe current setup of LogServlet does not permit Commit Graph and Bloom\nFilter serving due to their RevWalk setup does not disable RetainBody\nflag and does not accept the intended ChangedPathTreeFilter.\n\nIncorporating RetainBody disable and ChangedPathTreeFilter into RevWalk\nsetup.\n\nChange-Id: I5e2d7f00df67708c41e2509d5a12e3661a0cecd9\nSigned-off-by: Xing Huang \u003cxingkhuang@google.com\u003e\n"
    },
    {
      "commit": "6b3b1349915dac982c92cc73876e7a08cd69c33f",
      "tree": "a90b91dbdba6837a91ee5f3926a729d6893e13dc",
      "parents": [
        "0d2b1790f0e48274a83352da9b6a7e4eec0df1bb"
      ],
      "author": {
        "name": "Xing Huang",
        "email": "xingkhuang@google.com",
        "time": "Mon Mar 24 11:06:42 2025 -0500"
      },
      "committer": {
        "name": "Xing Huang",
        "email": "xingkhuang@google.com",
        "time": "Mon Mar 24 13:16:14 2025 -0500"
      },
      "message": "Update jgit to f693c0478 (latest servlet-4 branch)\n\nThis is a rebase of 9d7a42772992d84791864512c57e86584f322853\n\nNotable changes in this JGit update:\n$ git log --oneline --no-merges 2d8777536..HEAD\n\n4a5dfce0d SystemReader: Add support for XDG_CACHE_HOME\nb37e2906c Removed redundant TreeFilter.ANY_DIFF in LogCommand.\n011f66df2 Bump minimum dependency for Bouncy Castle to 1.80.0\n967335858 BlameResult: Let generator decide when to use the blame cache\nd5f8a14ed (master) exttst: Pass encoding to InputStreamReader\n776ec5f71 Update last jgit release version to 7.2.0.202503040940-r\n21c8915f1 Update scm url in pom.xml to refer to gerrit homepage of jgit repo\ne2ddcc969 TreeRevFilter: enable Bloom Filter usage with ChangedPathTreeFilter\n18354e81f ReftableCompactor: Use instant to set the reflog expire time\ncd1cefd48 GC: Use new java.time API in PersonIdent\n14ecf2cb8 reftable.BlockWriter: Use time API methods from PersonIdent\n69f57d2a7 Add target platform jgit-4.36 for eclipse 2025-06\n82d195731 Checkout: Handle InvalidRefNameException\n52dc9fdd0 BlameGenerator: Use cache only for candidates modifying the path\n6c129d283 Update maven plugins\n1429ccbd8 Update spotbugs-maven-plugin to 4.9.2.0\n6c22087ef Update mockito to 5.16.0\n511242aeb Update jetty to 12.0.17\nf1bf54191 Update bytebuddy to 1.17.2\n9b08cf230 FileReftableDatabase: mark autoRefresh volatile\n2a3e1191e Prepare 7.3.0-SNAPSHOT builds\n4a5dfce0d SystemReader: Add support for XDG_CACHE_HOME\nb37e2906c Removed redundant TreeFilter.ANY_DIFF in LogCommand.\n011f66df2 Bump minimum dependency for Bouncy Castle to 1.80.0\n967335858 BlameResult: Let generator decide when to use the blame cache\nd5f8a14ed (master) exttst: Pass encoding to InputStreamReader\n776ec5f71 Update last jgit release version to 7.2.0.202503040940-r\n21c8915f1 Update scm url in pom.xml to refer to gerrit homepage of jgit repo\ne2ddcc969 TreeRevFilter: enable Bloom Filter usage with ChangedPathTreeFilter\n18354e81f ReftableCompactor: Use instant to set the reflog expire time\ncd1cefd48 GC: Use new java.time API in PersonIdent\n14ecf2cb8 reftable.BlockWriter: Use time API methods from PersonIdent\n69f57d2a7 Add target platform jgit-4.36 for eclipse 2025-06\n82d195731 Checkout: Handle InvalidRefNameException\n52dc9fdd0 BlameGenerator: Use cache only for candidates modifying the path\n6c129d283 Update maven plugins\n1429ccbd8 Update spotbugs-maven-plugin to 4.9.2.0\n6c22087ef Update mockito to 5.16.0\n511242aeb Update jetty to 12.0.17\nf1bf54191 Update bytebuddy to 1.17.2\n9b08cf230 FileReftableDatabase: mark autoRefresh volatile\n2a3e1191e Prepare 7.3.0-SNAPSHOT builds\n79736e412 (origin/stable-7.2) Prepare 7.2.1-SNAPSHOT builds\nfddef06cc (tag: v7.2.0.202503040940-r) JGit v7.2.0.202503040940-r\nc43126fc8 JGit v7.2.0.202503040805-r\n28136bc49 CacheRegion: fix non translatable text warnings\n4ef88700d Ensure access to autoRefresh is thread-safe\nac5146ffb FileReftableStack: use FileSnapshot to detect modification\n1ff9c2a1c FileReftableDatabase: consider ref updates by another process\n5db57fe2a BlameRegionMerger: report invalid regions with checked exception.\n1b70d59fc Prepare 7.2.0-SNAPSHOT builds\n3edab4e9f [ssh known_hosts] Handle unknown keys better\n9ad4310db [releng] Remove unused target platform definitions\n63d741669 (tag: v7.2.0.202502261823-rc1) JGit v7.2.0.202502261823-rc1\nc5bf0fba1 [ssh known_hosts] Handle host certificates\n7c6b51cef [ssh known_hosts] Improve updating modified keys\nce3b62c41 [ssh known_hosts] Add tests and fix problems\n4bd76e6bc [ssh, releng] Remove net.i2p.crypto.eddsa\n04ff530a2 AddCommand: Use parenthesis to make the operator precedence explicit\n46d742588 AddCommand: implement --all/--no-all\ne328d203f (origin/stable-6.10) Do not load bitmap indexes during directory scans\nadab727fd StringUtils: new #trim method\n6108fd8a2 Add --exclude option to describe CLI command\n8501e5d6a DescribeCommand: remove unnecessary else clause\n68f454af4 DescribeCommand: Add exclusion matches using setExclude()\n8720b352a Insert the Change-Id at the end of the footer block\n7c1f4fde0 Update byte-buddy to 1.17.1\n74aff4635 Update commons-logging:commons-logging to 1.3.5\n6f3abed9d Update commons-codec:commons-codec to 1.18.0\n92583e481 Update com.google.code.gson:gson to 2.12.1\nf2fad1fd1 Update ecj to 3.40.0\n8c801c2a6 Update maven plugins\ne10f876b4 ssh: bump Apache MINA sshd 2.14.0 -\u003e 2.15.0\n70a3131d6 Update Change-Id insertion logic to insert after footers\n4aae789d2 MultiPackIndexPrettyPrinter: add missing @since tag\n3a11e6cc9 Export new package org.eclipse.jgit.blame.cache\nfab9b3d96 Fix calculation of pack files and objects since bitmap\nae6665197 BlameGenerator: add @since tags to new methods and inner class\nbec51e7d7 pgm.MultiPackIndex: CLI command to write/print the multipack index\n871c5e177 BlameGenerator: cache and reuse blame results\n00528ac80 Prepare 7.2.0-SNAPSHOT builds\n24d08f221 (tag: v7.2.0.202502191417-m3) JGit v7.2.0.202502191417-m3\n5dae4a835 Pack: no longer set invalid in openFail()\n4c4bef885 DirCacheCheckout.preScanOneTree: consider mode bits\nf41253804 Merge: improve handling of case-variants\n\nChange-Id: Ia7f2a73b3ebd7104d1691e58550db7091a78a08e\n"
    },
    {
      "commit": "0d2b1790f0e48274a83352da9b6a7e4eec0df1bb",
      "tree": "ff85e0a50349d7c6fcd4339a400d71016b46a841",
      "parents": [
        "9d7a42772992d84791864512c57e86584f322853"
      ],
      "author": {
        "name": "Matthias Sohn",
        "email": "matthias.sohn@sap.com",
        "time": "Wed Feb 26 22:12:04 2025 +0100"
      },
      "committer": {
        "name": "Matthias Sohn",
        "email": "matthias.sohn@sap.com",
        "time": "Wed Feb 26 22:13:32 2025 +0100"
      },
      "message": "Prepare release 1.6.0\n\n$ git log --oneline --no-merges v1.5.0..HEAD\n9d7a427 Update jgit to 2d8777536 (servlet-4 branch)\n946a41d Bump minimum Java version to 17 and add Java 21 build\n98a9b85 README: Point link to gerrit\u0027s bugtracker\n859617c Documentation - API Reference\n5371b1f Add committeroneline template to gitiles LogDetail.soy\na37b23e Bump JGit to d5cc102e7 (stable-6.10)\n30851aa VisibilityChecker: Remove deprecated variant of isReachableFrom\n6454234 VisibilityChecker#isReachableFrom: Remove unused param and exceptions\n9b81f87 VisibilityCache/Checker: Use streams for the reachability starters\nace68b4 Document enabling edit links by setting gerritUrl\n04b5095 Fix source, log and blame URLs not showing in Markdown doc footers\n77c2325 Format sources using google-java-format 1.24.0\n\nChange-Id: I69ead0ac4b5901d161813d9194d2690a2ac09fff\n"
    },
    {
      "commit": "9d7a42772992d84791864512c57e86584f322853",
      "tree": "33818bbfa5778870d034831d37f3d79cebd8b43a",
      "parents": [
        "946a41d8a08fa01dbc50f09b272909ae7d4811f1"
      ],
      "author": {
        "name": "Matthias Sohn",
        "email": "matthias.sohn@sap.com",
        "time": "Thu Feb 20 22:23:11 2025 +0100"
      },
      "committer": {
        "name": "Matthias Sohn",
        "email": "matthias.sohn@sap.com",
        "time": "Wed Feb 26 11:32:22 2025 +0100"
      },
      "message": "Update jgit to 2d8777536 (servlet-4 branch)\n\nThe servlet-4 branch follows the master branch with servlet-api\ndowngraded to 4.0.4.\n\nNotable changes in this JGit update:\n\n2d8777536 Downgrade from servlet-api 6.1.0 to 4.0.4\ne295f7bd9 blame.cache: Define interface and POJO to cache blame results\nc625d67f8 URIish: fix stack overflow in regex matching\ne9f43b6c1 midx.MultiPackIndexPrettyPrinter: pretty printer to debug multi pack index\n072e93fde midx.MultiPackIndexWriter: a writer for the multipack index format\n6670e54e8 [ssh known_hosts] Correct parsing of host key lines\nff3a15049 Improve configuration of trusting file attributes in FileSnapshot\na86e2a7d7 Config: add getters for primitive types without default value\ndeae89f9e CommitConfig: fix potential NPE\n29e014aad midx.PackIndexMerger: Helper to iterate over n-indexes\na8efd046f RevWalk: Add an isMergedIntoAnyCommit() method\n772ee0e5f Log pruned packfiles as debug and not warn logs\n7b8ddc2ce RefDatabase#getReflogReader(String): use #exactRef to resolve refName\ne93294f01 Deprecate Repository#getReflogReader methods\n61a35e655 Update bouncycastle to 1.80\ne5e2e0269 Set repositoryformatversion\u003d0 when converting refStorage to files\n300a53dd6 GarbageCollectCommand, GC: use java.time API\nfc5cbf1d7 GitDateFormatter: use java.time API\n51d6c63fe Pack: separate an open/close accounting lock\nd91555854 Update jetty to 12.0.16\na783bb76c transport: Remove usage of CommitTimeRevFilter with long and Dates\n937cfdc76 CommitTimeRevFilter: Move to java.time API\ndbd0a6a74 Remove use of deprecated java.security.AccessController\n6fa28d767 Add pack-refs command to the CLI\nfbbd0c3e3 Don\u0027t fail when trying to prune pack which is already gone\nce3a7ca3b Rename numberOfPackFilesAfterBitmap to numberOfPackFilesSinceBitmap\n88f8321ba SystemReader: Offer methods with java.time API\nb2accb0e9 GPG: use BC PGP secret key parsing out of the box\nd1a14b8ff SSH signing: implement a SignatureVerifier\nc9958e9b7 SSH signing: implement a Signer\n4902b2baf Add `numberOfPackFilesAfterBitmap` to RepoStatistics\na202d9706 SSH signing: don\u0027t require a session in PasswordProviderWrapper\n06485d527 SSH signing: make OpenSSH pattern matching public\nd4ef88dae SSH signing: prepare config\n1519c1479 Align request policies with CGit\n30134f214 Update Apache sshd to 2.14.0\n7a4c05932 WindowCursor: Fix parameter name in javadoc\n0155f8bf6 RevolveMerger: honor ignoreConflicts also for binary files\n0fd76114e Replace custom encoder Constants#encodeASCII by JDK implementation\ne5d289899 Replace custom encoder `Constants#encode` by JDK implementation\n45689b4a2 Revert \"Remove deprecated LocalDiskRepositoryTestCase#create(boolean,boolean)\"\nb4bdf9841 Remove deprecated JschSession#getSftpChannel method\n0ae586b81 Remove deprecated AutoLFInputStream constructors\nf9a608b57 Remove deprecated RawParseUtils#UTF8_CHARSET\n2a10b416f Remove deprecated FS#setAsyncFileStoreAttributes method\n0b531cd6e FS, FS_Posix: remove deprecated #createNewFile(File) method\n8baef2271 Remove deprecated lastModified methods using long\n88053eedc UserAgent: remove deprecated #getAgent, #hasAgent methods\nd64e09230 Remove deprecated Transport#getFilterBlobLimit methods\nd67227653 Remove deprecated RefAdvertiser#send(Map\u003cString, Ref\u003e) method\n0d4e81e50 Remove deprecated ReceivePack#setEchoCommandFailures method\n66f340865 Remove deprecated class ReceivePack.FirstLine\n7b65a8472 PacketLineIn: make deprecated #END and #DELIM private\nfc76f226c WindowCacheStats: remove deprecated #getOpenFiles, #getOpenBytes\n0143d6de0 Remove deprecated PatchApplier#applyPatch(InputStream)\n42d318261 Remove deprecated MergeMessageFormatter#formatWithConflicts\ne54225460 Remove deprecated MergeFormatter#formatMerge using charset name\n987a24ba2 Remove deprecated MergeFormatter#formatMerge using charset name\n7162722e9 Remove deprecated TagBuilder#toByteArray method\n925f0d14d Remove deprecated Repository#hasObject(AnyObjectId) method\nac1265a51 Make deprecated Repository#peel(Ref) private\ndb9443d80 Remove deprecated RefDatabase#getRef(String) method\n8140ad78d CoreConfig: remove deprecated #isLogAllRefUpdates method\n16f8db059 Constants: remove deprecated #CHARSET and #CHARACTER_ENCODING\n3585035a7 Remove deprecated ConfigConstants#CONFIG_KEY_STREAM_FILE_TRESHOLD\n7650a68ad Remove deprecated CommitBuilder#setEncoding(String) method\n63348b21d Remove deprecated static #equals(AnyObjectId, AnyObjectId) method\nec97acb80 Remove deprecated FileSnapshot.save(long) method\n65bc6e4f0 Remove deprecated lastModified accessors returning long\n3c8b60b08 Remove deprecated PackInvalidException constructors\nf1a4afe37 DirCacheEntry: remove deprecated methods\na00b7c392 Remove deprecated DirCacheCheckout#checkoutEntry methods\n724626a9c Remove deprecated StashApplyCommand#setApplyUntracked method\nee02be9c8 Remove deprecated StashApplyCommand#setApplyIndex method\n8c81cfc9c Remove deprecated RemoteSetUrlCommand#setUri method\nb4243e431 Remove deprecated RemoteSetUrlCommand#setPush method\n30274153e Remove deprecated RemoteSetUrlCommand#setName method\n373fbb488 Remove deprecated RemoteRemoveCommand#setName method\n0757ca6bf Remove deprecated CheckoutCommand#setForce method\n22f7beaf2 Remove deprecated CheckoutCommand#setForce method\n6007aee36 Remove deprecated static AnyLongObjectId#equals method\n3682611ce Remove deprecated LocalDiskRepositoryTestCase#create(boolean,boolean)\n45e28716c walks: Remove deprecated #createReachabilityChecker() method\ne5cc3151a RepoCommand.RemoteReader: Remove @Deprecated method\n8438808f9 ReachabilityChecker: Remove @Deprecated method\nff1592ef7 UploadPack: Remove @Deprecated classes and methods\nf13a655c5 Update jakarta.servlet:jakarta.servlet-api to 6.1.0\na78e6eaef Signing: refactor interfaces\n299a7348e [ssh] Bump Apache MINA sshd 2.13.1 -\u003e 2.13.2\n026d46de1 Bump jetty version to 12.0.9 and servlet-api to 6.0\n7fd8a7a66 Update minimum Java version to 17\n\nChange-Id: I353d000b4aa5fdeddbee9cdb32c4a37e5a5824b1\n"
    },
    {
      "commit": "946a41d8a08fa01dbc50f09b272909ae7d4811f1",
      "tree": "46d1bdc211f3d8bc2e5b70fb9b9071865aacf408",
      "parents": [
        "98a9b8578cab271164d94914fc6b8cf251e51449"
      ],
      "author": {
        "name": "Matthias Sohn",
        "email": "matthias.sohn@sap.com",
        "time": "Thu Feb 20 22:19:50 2025 +0100"
      },
      "committer": {
        "name": "Matthias Sohn",
        "email": "matthias.sohn@sap.com",
        "time": "Fri Feb 21 01:36:34 2025 +0100"
      },
      "message": "Bump minimum Java version to 17 and add Java 21 build\n\nChange-Id: Ia063d5de28cd69152286a3dec4a6f614f1549915\n"
    },
    {
      "commit": "98a9b8578cab271164d94914fc6b8cf251e51449",
      "tree": "94ec501d4d2ad2dfc45bafbb70ce86f9481f2864",
      "parents": [
        "7bddf7d1b2eff695fe4201d37742ec57a3cf5c59"
      ],
      "author": {
        "name": "Ivan Frade",
        "email": "ifrade@google.com",
        "time": "Mon Feb 10 13:37:13 2025 -0800"
      },
      "committer": {
        "name": "Ivan Frade",
        "email": "ifrade@google.com",
        "time": "Mon Feb 10 14:18:11 2025 -0800"
      },
      "message": "README: Point link to gerrit\u0027s bugtracker\n\nREADME points to the github bugtracker, but that project is archived.\n\nUpdate the link to gerrit\u0027s bugtracker, because gitiles is hosted\ntogether with gerrit and both share many developers.\n\nChange-Id: Ifb144062290f3e3c823717afd7266af90e69d27d\n"
    },
    {
      "commit": "7bddf7d1b2eff695fe4201d37742ec57a3cf5c59",
      "tree": "2c5fc6feaedd01d6317701b63f057cd23420a267",
      "parents": [
        "5371b1f7691be043928f505edf753e6b747f4424",
        "859617c703227f52d7478b4280f6fa4e619daf11"
      ],
      "author": {
        "name": "Matthias Sohn",
        "email": "matthias.sohn@gmail.com",
        "time": "Fri Feb 07 04:58:47 2025 -0800"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Feb 07 04:58:47 2025 -0800"
      },
      "message": "Merge \"Documentation - API Reference\""
    },
    {
      "commit": "859617c703227f52d7478b4280f6fa4e619daf11",
      "tree": "cd1e8304d0fd4e35cc07fcf775472b08aaed68a5",
      "parents": [
        "a37b23eb0112ede3c16d21976353012e1248ad33"
      ],
      "author": {
        "name": "Wendy Wang",
        "email": "wendy.wang10@sap.com",
        "time": "Tue Feb 04 16:09:16 2025 +0100"
      },
      "committer": {
        "name": "Wendy Wen Wang",
        "email": "wendy.wang10@sap.com",
        "time": "Fri Feb 07 04:44:12 2025 -0800"
      },
      "message": "Documentation - API Reference\n\nDocumented behavior of:\n+refs, +log, +show, +archive, +doc, +blame, +diff\n\nIncluded working endpoints as examples.\n\nReferences (besides the Gitiles source code):\nhttps://www.chromium.org/developers/change-logs/\nhttps://github.com/google/gitiles/issues/52\n\nChange-Id: Icf3db82574b93be18b61772150baf56f3005b6e3\n"
    },
    {
      "commit": "5371b1f7691be043928f505edf753e6b747f4424",
      "tree": "0a8a7f2785241944cb94d946e22900d0cd990490",
      "parents": [
        "a37b23eb0112ede3c16d21976353012e1248ad33"
      ],
      "author": {
        "name": "Tim Zhou",
        "email": "timzhou@google.com",
        "time": "Wed Feb 05 19:26:00 2025 +0000"
      },
      "committer": {
        "name": "Tim Zhou",
        "email": "timzhou@google.com",
        "time": "Wed Feb 05 14:07:37 2025 -0800"
      },
      "message": "Add committeroneline template to gitiles LogDetail.soy\n\nThis is a workaround change to help alleviate pain from developers trying to use gitiles custom templates. These templates have been broken due to a soy LSC migrating to go/soy/reference/modifiable-templates. To use this new template, users may have to remove the respective configuration settings for their custom templates in gitiles.config. See b/389770745 for more context.\n\nChange-Id: Ice7d23c7902042d70f2e8ef7ac2f0a2377441cc1\n"
    },
    {
      "commit": "a37b23eb0112ede3c16d21976353012e1248ad33",
      "tree": "5c27a18d84667ee000f35efa9d78a74dc80e9807",
      "parents": [
        "30851aacbea3370c7be8179c890b3401526242eb"
      ],
      "author": {
        "name": "Ivan Frade",
        "email": "ifrade@google.com",
        "time": "Fri Dec 20 09:51:43 2024 -0800"
      },
      "committer": {
        "name": "Ivan Frade",
        "email": "ifrade@google.com",
        "time": "Fri Dec 20 09:51:43 2024 -0800"
      },
      "message": "Bump JGit to d5cc102e7 (stable-6.10)\n\nAfter this update, we can rebuild jgit-servlet with javax and keep\nupdate JGit to 7.x.\n\n$ git log --oneline --no-merges 2c86ef242..d5cc102e7\nd5cc102e7 http.server/BUILD: expose servlet resources as target\n1177e1e4a WindowCache: share removal work among multiple threads\n105a313ea Update target platform version in maven build to 4.32 (2024-06)\nfef56c3c8 FileSnapshot: fix warnings\ncdbea5ea9 Optionally.Hard: avoid Optional creation on every use,\nae53d6383 Pack: fix threading bug getting idx\nd2ff398bc Fix potential NPE in TreeWalk#getFilterCommandDefinition\n2b229df06 Advertise \"agent\" capability when using protocol v2\n7fedd15c8 FileSnapshot: silence \"Stale file handle\" exceptions\neb0ef9d16 FileSnapshot: silence \"Not a Directory\" exceptions\ndd8b13acc FileSnapshot: refactor to share error handling\n4156bdfe8 Mark Attribute#getValue as @Nullable\n7f246a05d Fix potential NPE in ResolveMerger#getAttributesContentMergeStrategy\nf2741cace Fix NPE in DiffFormatter#getDiffDriver\nfb6adb036 Pack: ensure packfile is still valid while still recoverable\n44d61a3d7 WindowCache: add bulk purge(), call from bulk sites\n702db13af UploadPack#implies: add missing @since tag\n9018baf9f Disable MergeToolTest#testEmptyToolName\nf026c19a0 PackDirectory: Filter out tmp GC pack files\n079dbe8ed Test advertised capabilities with protocol V0 and allow*Sha1InWant\n5b1513a28 Align request policies with CGit\nc824610ab DiffDriver: fix doc for rust built-in\n48f36f969 DiffDriver: fix formatting of javadoc\ne682a0239 Pack.java: Recover more often in Pack.copyAsIs2()\n\nChange-Id: I70a9ac7be1704d7dc0ddea2238fc31ffd55dd956\n"
    },
    {
      "commit": "30851aacbea3370c7be8179c890b3401526242eb",
      "tree": "05566305ab76896652fec21b4cebef6a01c7fc14",
      "parents": [
        "6454234da0f10e110fff147c2164d4bedc5ef2c0"
      ],
      "author": {
        "name": "Ivan Frade",
        "email": "ifrade@google.com",
        "time": "Fri Dec 06 10:42:07 2024 -0800"
      },
      "committer": {
        "name": "Ivan Frade",
        "email": "ifrade@google.com",
        "time": "Fri Dec 06 13:06:58 2024 -0800"
      },
      "message": "VisibilityChecker: Remove deprecated variant of isReachableFrom\n\nThis deprecated variant was already calling the new one. Subclasses\nshould move to override the new method.\n\nChange-Id: I2a3708dfd44dbaf047d785d56dfc9c732ec7c924\n"
    },
    {
      "commit": "6454234da0f10e110fff147c2164d4bedc5ef2c0",
      "tree": "dce2f26c822e14aad1008fe17411f437bfb60e11",
      "parents": [
        "9d903356828056ef35480eda39d97ccb8125a82c"
      ],
      "author": {
        "name": "Ivan Frade",
        "email": "ifrade@google.com",
        "time": "Fri Dec 06 09:18:36 2024 -0800"
      },
      "committer": {
        "name": "Ivan Frade",
        "email": "ifrade@google.com",
        "time": "Fri Dec 06 13:06:45 2024 -0800"
      },
      "message": "VisibilityChecker#isReachableFrom: Remove unused param and exceptions\n\nThe current signature of #isReachableFrom has couple of wrinkles: the\ndescription is not used and the only caller of this method doesn\u0027t\ndifferentiate the subclasses of IOException.\n\nFixing the method now, before deleting the deprecated variant, helps\ndownstream transition: subclasses can move to the updated API and\nignore the deprecated variant. If we want to change this later,\ndownstream needs to update at the same time than the superclass.\n\nUpdate also the tests, to use the \"new\" variant.\n\nChange-Id: If31043ab711a7a287ebf5529e2823fc8ed73ed97\n"
    },
    {
      "commit": "9d903356828056ef35480eda39d97ccb8125a82c",
      "tree": "ab8e6f7e0071f390a3105e089255951d48e2c33d",
      "parents": [
        "3e7f3028d96f28cdc572ad40e560c7a2a8468629",
        "9b81f8789d674585a8dd839fed43c2f8f0aa71d5"
      ],
      "author": {
        "name": "Matthias Sohn",
        "email": "matthias.sohn@gmail.com",
        "time": "Thu Dec 05 15:34:31 2024 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Dec 05 15:34:31 2024 +0000"
      },
      "message": "Merge \"VisibilityCache/Checker: Use streams for the reachability starters\""
    },
    {
      "commit": "3e7f3028d96f28cdc572ad40e560c7a2a8468629",
      "tree": "02895c4deadfae6b3b6a2fab93bf1dd13b91a95c",
      "parents": [
        "ace68b4a1dc3effb981ae2a9cf8633906620136f",
        "04b5095640207a5d73e81028adef5e8c4b74b788"
      ],
      "author": {
        "name": "Nasser Grainawi",
        "email": "nasser.grainawi@oss.qualcomm.com",
        "time": "Wed Dec 04 20:12:19 2024 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Dec 04 20:12:19 2024 +0000"
      },
      "message": "Merge \"Fix source, log and blame URLs not showing in Markdown doc footers\""
    },
    {
      "commit": "9b81f8789d674585a8dd839fed43c2f8f0aa71d5",
      "tree": "83b2ce2d99ba3a245a45206ee917bf192a61db00",
      "parents": [
        "77c2325eb540437a140bd3d3a38499b91c8597a9"
      ],
      "author": {
        "name": "Ivan Frade",
        "email": "ifrade@google.com",
        "time": "Fri Nov 22 10:54:35 2019 -0800"
      },
      "committer": {
        "name": "Ivan Frade",
        "email": "ifrade@google.com",
        "time": "Wed Dec 04 09:09:21 2024 -0800"
      },
      "message": "VisibilityCache/Checker: Use streams for the reachability starters\n\nThe materialized collection of starters performs the potentially\nexpensive ObjectId to RevCommit translation, but probably many commits\nwon\u0027t be needed at all in an incremental reachability check.\n\nUse streams to pass the starters to the reachability checker, delaying\nthe ObjectId to RevCommit translation until it is really needed.\n\nNote that for repositories without bitmaps the performance could vary.\nBefore, it was setting some start points, walk, set new start points,\nwalk.... until finding the required commit. Now it will set all start\npoints from the beginning. This increases the cost to start walking,\n(but could also avoid re-walking previously visited nodes).\n\nChange-Id: Ifa58e8e7f4cf44e30e1ff57d5a60f24378181f56\n"
    },
    {
      "commit": "ace68b4a1dc3effb981ae2a9cf8633906620136f",
      "tree": "685ca32b15ca0a9a80d92a70a59b25f2930237d0",
      "parents": [
        "77c2325eb540437a140bd3d3a38499b91c8597a9"
      ],
      "author": {
        "name": "Ilmari Lauhakangas",
        "email": "ilmari.lauhakangas@libreoffice.org",
        "time": "Fri Nov 29 12:07:17 2024 +0200"
      },
      "committer": {
        "name": "Mestari Tonttu",
        "email": "ilmari.lauhakangas@libreoffice.org",
        "time": "Wed Dec 04 16:56:26 2024 +0000"
      },
      "message": "Document enabling edit links by setting gerritUrl\n\nChange-Id: I6ab7b304aae2dc1b1f9d6b81941d3a919351faf7\n"
    },
    {
      "commit": "04b5095640207a5d73e81028adef5e8c4b74b788",
      "tree": "d5ae9bc9796c25231e1b6c5ac3b4248ac19b9799",
      "parents": [
        "77c2325eb540437a140bd3d3a38499b91c8597a9"
      ],
      "author": {
        "name": "Ilmari Lauhakangas",
        "email": "ilmari.lauhakangas@libreoffice.org",
        "time": "Fri Nov 29 17:16:11 2024 +0200"
      },
      "committer": {
        "name": "Mestari Tonttu",
        "email": "ilmari.lauhakangas@libreoffice.org",
        "time": "Wed Dec 04 12:08:59 2024 +0000"
      },
      "message": "Fix source, log and blame URLs not showing in Markdown doc footers\n\nIt seems this regressed at some point. Suspected to be:\ncommit 564ab4b420c0968bc171fc4abfa9a684ef700847\nAuthor: Patrick Hiesel \u003chiesel@google.com\u003e\nDate:   Wed Jun 6 13:13:49 2018 +0200\n\n    Make doc footer configurable\n\n    This will let custom templates override the default doc footer to put\n    site-specific links.\n\n\nChange-Id: I2d3081eeebe6e7b854dceb1366981d8cd97d3af1\n"
    },
    {
      "commit": "77c2325eb540437a140bd3d3a38499b91c8597a9",
      "tree": "0e32e1e87a1e6e6a6190f4541b42c9a7f770635d",
      "parents": [
        "f7892becc3c599494add2eab7e5f75ec842467d6"
      ],
      "author": {
        "name": "Matthias Sohn",
        "email": "matthias.sohn@sap.com",
        "time": "Thu Nov 21 23:23:42 2024 +0100"
      },
      "committer": {
        "name": "Matthias Sohn",
        "email": "matthias.sohn@sap.com",
        "time": "Thu Nov 21 23:23:42 2024 +0100"
      },
      "message": "Format sources using google-java-format 1.24.0\n\nGerrit updated to this version in [1].\n\n[1] https://gerrit-review.googlesource.com/c/gerrit/+/441049\n\nChange-Id: I81441a8b179d13edb539346689370868c2491e02\n"
    },
    {
      "commit": "f7892becc3c599494add2eab7e5f75ec842467d6",
      "tree": "f3483ce603fd9ac07b74157991fc6955fc809ec8",
      "parents": [
        "134f31233d377e8aee5bf000fe65c1fdf19315ad"
      ],
      "author": {
        "name": "Kaushik Lingarkar",
        "email": "kaushikl@qti.qualcomm.com",
        "time": "Wed Nov 20 16:21:10 2024 -0800"
      },
      "committer": {
        "name": "Kaushik Lingarkar",
        "email": "kaushikl@qti.qualcomm.com",
        "time": "Thu Nov 21 05:35:14 2024 +0000"
      },
      "message": "Bump version to 1.5.0\n\nChanges since 1.4.0:\n\n$ git log --oneline --no-merges v1.4.0..HEAD\ndaf7aac Bump version to 1.5.0\n134f312 Bump JGit to stable-6.10\n3cc31b2 Remove an unneeded use of the LoggingAdvisingAppendable api\ne1f30cb Update JGit to 692ccfc0c (stable-6.10)\nc75eb8d Update bazlets to de7597593918677465f8ef4330a62f0b9a50f81c\n83e5a1b VisibilityChecker: use #areAllReachable with a stream of starters\nc7f7328 LogDetail: update to use \"\u0026\u0026\" over \"and\"\n4ea413d BlameCacheImpl: making loadRegions() public\n386712e Region: making getEnd() public\n84fb315 Add link to file view for creating a Gerrit change/edit\nc27f65e DevServer: Fix compilation error for getUserKey\n3ad1997 tools/run_dev.sh: Allow specifying BAZEL\ne15e8ff Update Soy templates to use the ! operator instead of \u0027not\u0027.\n37e5d8f update soy dependency to version 2024-01-30\n2c42c55 DocServletTest: remove println\nb69f574 add unit test for pretty\u003dfuller query parameter\n2e56e66 add unit test for Next button link in Log view\ne4ae359 ensure that s\u003d param is set correctly for previous link in log\n132683b Bump Bazel version to 7.0.1\n2527109 Bump bazlets version to 50f43f450f\n125b70a If pretty\u003dfuller set verbose to true\ne1a001b Update JGit to b1cc74b75\n2a5b48f Update jetty to 9.4.53.v20231009\n14d8667 Update byte-buddy to 1.14.9\n97502d9 Update org.mockito:mockito-core to 5.6.0\n3122006 Update com.ibm.icu:icu4j to 74.2\n89587aa Update ch.qos.reload4j:reload4j to 1.2.25\n61570ba Update com.google.code.gson:gson to 2.10.1\n76c4713 Update commons-codec:commons-codec to 1.16.0\n071a314 Update com.googlecode.javaewah:JavaEWAH to 1.2.3\n619b4a8 Update org.apache.commons:commons-compress to 1.25.0\n\nChange-Id: Ic36fa3eb75028de1594c646c0267ef80a07531ac\n"
    },
    {
      "commit": "134f31233d377e8aee5bf000fe65c1fdf19315ad",
      "tree": "70e0f39a3a61311cd6410853ce8b287127a8aabb",
      "parents": [
        "3cc31b285de6fb82933f0f95578de75b98d03fb9"
      ],
      "author": {
        "name": "Kaushik Lingarkar",
        "email": "kaushikl@qti.qualcomm.com",
        "time": "Fri Nov 15 11:44:41 2024 -0800"
      },
      "committer": {
        "name": "Kaushik Lingarkar",
        "email": "kaushikl@qti.qualcomm.com",
        "time": "Wed Nov 20 15:02:30 2024 -0800"
      },
      "message": "Bump JGit to stable-6.10\n\nHtmlDiffFormatter is updated to override the new \u0027writeHunkHeader\u0027\nmethod which adds function names to the hunk headers.\n\n$ git log --oneline --no-merges --no-decorate 692ccfc0c...2c86ef242\n469928898 Add numberOfObjectsSinceBitmap to RepoStatistics\n4b3c5194a Support built-in diff drivers for hunk header function names\n592a75800 Don\u0027t fail when trying to prune pack which is already gone\nf7a4dd035 Rename numberOfPackFilesAfterBitmap to numberOfPackFilesSinceBitmap\nd34f8b523 Replace custom encoder Constants#encodeASCII by JDK implementation\ne8c414b9c Replace custom encoder `Constants#encode` by JDK implementation\n93ede18ff Add `numberOfPackFilesAfterBitmap` to RepoStatistics\n958d05392 Enhance CommitBuilder#parent to tolerate null parent\n3a7a9cb0e ResolveMerger: Allow setting the TreeWalk AttributesNodeProvider\n4f48a5b1e Add Union merge strategy support\neeccc5a92 Update Apache sshd to 2.14.0\ned0835856 LfsConnectionFactoryTest: remove unnecessary cast\n72652ff65 JSchSshProtocol2Test: remove unnecessary cast\na2e477296 ApacheSshProtocol2Test: remove unnecessary cast\n9e1cd8aec NoteMapMerger: remove unnecessary cast\n56a5db65b AdvertisedRequestValidator: fix WantNotValidException caused by race\n\nRelease-Notes: Hunk headers will now show function names for supported built-in diff drivers\nChange-Id: I186730a06bbcd9fe67c576380d5d14de3d41dab3\n"
    },
    {
      "commit": "3cc31b285de6fb82933f0f95578de75b98d03fb9",
      "tree": "cf61461a7888d1b287e1e683834381eaa94c478e",
      "parents": [
        "e1f30cb707d15f576192cf0721c06ef05c215d93"
      ],
      "author": {
        "name": "JiaYan Lin",
        "email": "jiayanl@google.com",
        "time": "Wed Sep 25 08:26:14 2024 +0000"
      },
      "committer": {
        "name": "JiaYan Lin",
        "email": "jiayanl@google.com",
        "time": "Wed Sep 25 08:27:33 2024 +0000"
      },
      "message": "Remove an unneeded use of the LoggingAdvisingAppendable api\n\nThe Soy rendering apis can accept an Appendable/Writer directly.\n\nChange-Id: I106220b1f4a3c02817af4cbf0b8e59ea17cbbecb\n"
    },
    {
      "commit": "e1f30cb707d15f576192cf0721c06ef05c215d93",
      "tree": "d03696a0c0c1b88cb8e9e0735f52e3739a7981a5",
      "parents": [
        "c75eb8db1ae90e5013ead20c6ecdcfae0b9202df"
      ],
      "author": {
        "name": "Matthias Sohn",
        "email": "matthias.sohn@sap.com",
        "time": "Fri Sep 13 23:10:50 2024 +0200"
      },
      "committer": {
        "name": "Matthias Sohn",
        "email": "matthias.sohn@sap.com",
        "time": "Fri Sep 13 23:11:57 2024 +0200"
      },
      "message": "Update JGit to 692ccfc0c (stable-6.10)\n\n$ git log --oneline --no-merges b1cc74b75...692ccfc0c\n692ccfc0c AmazonS3: Ensure SAXParserFactory sets valid/expected input params\nd66175d7d LockFile: Retry lock creation if parent dirs were removed\ncc353f97b Update tycho to 4.0.8\n92c190d3e Update org.eclipse.dash:license-tool-plugin to 1.1.0\n9b73ec4d1 Fix \"Comparison of narrow type with wide type in loop condition\"\ncfdfb01f4 RepoProject: read the \u0027dest-branch\u0027 attribute of a project\n3d8420ecd Make RepoProject#setUpstream public\n4bc6eb8a7 RepoCommand: Add error to ManifestErrorException\n784f0baec RepoCommand: Copy manifest upstream into .gitmodules ref field\ne55341115 RepoProject: read the \"upstream\" attribute of a project\ne0ff3986f Prepare 6.10.1-SNAPSHOT builds\n23aaf83e8 JGit v6.10.0.202406032230-r\nd0a2288f4 JGit v6.10.0.202406032110-r\nea0ab1f86 Prepare 6.10.0-SNAPSHOT builds\ncbe5788a2 JGit v6.10.0.202405290101-rc1\nc9232e555 Revert \"Update tycho to 4.0.8\"\na7d3ac967 JGit v6.10.0.202405282244-rc1\n9b2fe85c0 PatchApplier.Result.Error: mark fields final\n76ce6d91a Update tycho to 4.0.8\na7cf56796 Update to org.assertj:assertj-core:3.26.0\nc0c59ccf2 PatchApplier: Set a boolean on the result if conflict markers were added\nf5f33be8c PatchApplier: Add test for conflict markers on a deleted file\n4a6d04b25 Update org.apache.commons:commons-compress to 1.26.2\nab6efc883 Remove version override of commons-codec\n376f66245 Update spring-boot-maven-plugin to 2.7.18\n4a6d21cdc Update jacoco-maven-plugin to 0.8.12\n83a79d39c Update maven-source-plugin to 3.3.1\nb7e87c1e5 Update maven-shade-plugin to 3.5.3\n6cc9e6116 Update  maven-pmd-plugin to 3.22.0\n7724b0a70 Update cyclonedx-maven-plugin to 2.8.0\n0499f8f60 Update build-helper-maven-plugin to 3.6.0\n6fe890bf7 Update maven-site-plugin to 4.0.0-M14\n378efdea6 Update maven-jar-plugin to 3.4.1\nff0017b2c Update maven-install-plugin to 3.1.2\n20f0ee06d Update maven-deploy-plugin to 3.1.2\ne182a45df Update maven-artifact-plugin to 3.5.1\n59c9f93c4 Update tycho to 4.0.7 and set minimum maven version to 3.9.0\nb59e90a1b Update git-commit-id-maven-plugin to 8.0.2\ncb7d1e0ba Update spotbugs-maven-plugin to 4.8.5.0\nb3cba1151 Update japicmp-maven-plugin to 0.21.2\n63c4332b7 Update maven-compiler-plugin to 3.13.0\n168cbaa25 Update bytebuddy to 1.14.16\n6123c81a3 Update com.google.code.gson:gson to 2.11.0\n2c38c2a0e Prepare 6.10.0-SNAPSHOT builds\n71613519e JGit v6.10.0.202405212237-m3\n7a74abd6b Update Apache commons-logging to 1.3.2\n7b8aab989 Update jetty to 10.0.21\n1f8f86e28 Update Apache commons-io to 2.16.1\n8164155bf Update Apache commons-codec to 1.17.0\ncac835835 WalkFetchConnection: Remove marked packs on all function exits\ne6217e2fe Do not use ArrayList when there will be deletions\n50ca16cb8 PatchApplierTest: remove unused import\n6e9a17036 Allow applying a patch with conflicts\nbee9796ab Remove unused API problem filters\nbca1f4d65 Fix warning \"Redundant specification of type arguments \u003cObject\u003e\"\n67860f6f0 Add 4.32 target platform\n28c3ae172 sshd: fix IdentiesOnly if SSH agent is enabled and has keys\na7d0cf38d Update mina-sshd to 2.12.1\ndbf45058c Update byte-buddy to 1.14.15\n127762ba8 Update org.apache.commons:commons-compress to 1.26.1\n003ddfb76 Update mockito to 5.12.0\na8cd1740f Update org.eclipse.jdt:ecj to 3.37.0\n30b147618 Update groovy to 4.0.21\n31a76e406 Update args4j to 2.37\nc1f95130c Check an execution bit by reading it from the file system\n5c0c18f56 [releng] Bump Bouncy Castle to 1.78.1\n9d5555d3c PackIndex: Make it an interface\n0647785eb PackIndex: Make iterator static (pass object count in ctor)\n13212d7ec PackIndex: move checksum to the subclasses\nda3792122 GitDateFormatterTest: Remove printlns\n98f329e93 Bazel: Add support for JDK 21\n7c1a6a005 Bazel: Replace deprecated --experimental_strict_action_env option\ne6a4a2a1f Fix warning about using raw type\na82cc38a9 [errorprone] Fix pattern ModifiedButNotUsed\ncfe948ac7 [errorprone] Fix pattern CatchAndPrintStackTrace\n8bc7f3848 [errorprone] Fix pattern FutureReturnValueIgnored\n85602eaa9 [errorprone] Fix pattern BadImport\n07e77293b [errorprone] Fix pattern UseCorrectAssertInTests\n1d2539880 [errorprone] Fix pattern ProtectedMembersInFinalClass\ncdb43391b [errorprone] Fix pattern CatchFail\nf1a9d25f4 [errorprone] Fix pattern see UnusedVariable\n8a8e45dd2 [errorprone] Fix pattern LongLiteralLowerCaseSuffix\n964498e0a [errorprone] Fix error pattern JdkObsolete\nd8cb554f2 [errorprone] Fix UnnecessaryParentheses errors\n6521c647b Bazel: Update RBE docker image to Ubuntu 22.04 and JDK 17\n4f735ec3e Bump Bazel version to 7.1.1\n1ed38b81b PackIndex: Make #getOffset protected to allow out-of-package subclasses\n567315af5 ResolveMerger: Fix the issue with binary modify-modify conflicts\ne97623d3e Explain why RacyGitTests may be flaky in some environments\n1790ff518 PackBitmapIndexBuilder.StoredEntry: add getter for objectId\n735dc8936 PackBitmapIndex: clarify naming of getObject inputs\n4b544d32f Revert \"[releng] Bump Bouncy Castle to 1.78\"\n718d121bb [releng] Bump Bouncy Castle to 1.78\ne4b4f063b MergeAlgorithm: Fix diff3 conflict hunk computation\nbe32798d2 [gpg] Remove obsolete import-package\nd24eee7d5 [gpg] Correct finding public keys from pubring.gpg\ned8c394eb [gpg] Fix reading ed25519 GPG keys\n5c623b1e6 PackBitmapIndexBuilder: make StoredEntry constructor public\ne118d4382 PackBitmapIndexBuilder: allow repeated call of getCompressedBitmaps()\nc11126115 DfsPackFile: Make the loader classes used to construct bitmaps public.\n33cacadbc DfsPackFile: make public the constructor with bitmap loader\n82b224c0d PackWriter: writeBitmapIndex takes bitmap index writer\n7f7c78090 Add more tests on rewriting parents in a RevWalk\na5ec41bd2 PackBitmapIndex: convert from class to interface\n81d64c913 Cache refreshed loose ref dirs in SnapshottingRefDirectory\n478a19cf7 DfsGarbageCollectorTest: add test for bitmap index creation\n3ffde6e01 PackBitmapIndex: hide packChecksum behind getter\n72fa0a53e TreeRevFilter: correct changedPathFilter usage for multi-paths inclusion\n9e841dd4a PathFilterGroup: implement getPathsBestEffort()\ne5a17df8f CleanupService: preload JgitText if not running in OSGi\nc1eba8abe DfsPackFile: get commitGraph.readChangePaths from repo config\n631cbf59f CommitGraphLoader: receive readChangedPaths as parameter\n900c5e62b Add pull request template discouraging usage of pull requests\ndc4fa3906 Update CONTRIBUTING.md to point to GitHub issues\n328008aa2 FS_POSIX.runInShell(): on MacOS use a login shell\nda7a88bce [ssh] Implement the \"Ciphers\" SSH config\nbf7dd9add ShutdownHook: run on bundle deactivation if in OSGi\n819c5bcc8 [diffmergetool] Fix running command on Cygwin\n24307bd38 [releng] Bump japicmp base version to 6.9.0.202403050737-r\nfe681b34f DfsBlockCache: move cache table specific implementations to a new class\n07d7452b3 Prepare 6.10.0-SNAPSHOT builds\ne61c20b1e Prepare 6.9.1-SNAPSHOT builds\nd764bc34f JGit v6.9.0.202403050737-r\n058faa28f JGit v6.9.0.202403050045-r\nd69a6c5de Prepare 6.9.0-SNAPSHOT builds\n21f7fdff7 Introduce core.trustLooseRefStat config\n407ccef1c JGit v6.9.0.202402281855-rc1\n64911e211 Update SECURITY.md\n5c94dcc56 DfsObjDatabase: Let object database instantiate DfsPackFiles\n049749558 DfsPackFile: Abstract the bitmap loading to support other backends\nd132050c2 Remove unused API problem filters\na44b9e8bf Support public key in IdentityFile\nf11d1365f Revert \"StartGenerator: Fix parent rewrite with non-default RevFilter\"\n55f3a9586 Prepare 6.9.0-SNAPSHOT builds\n36dd4dd9b JGit v6.9.0.202402211805-m3\n89bf38087 Delete org.eclipse.jgit.ssh.apache.agent/bin/.project\n3e624306d Allow to discover bitmap on disk created after the packfile\ne4b95ee56 DfsReader#getObjectSize: use size index if possible\n3d4a4bd93 Update jetty to 10.0.20\n90674ab15 Update maven plugins\n37f64ceea Update org.assertj:assertj-core to 3.25.3\nb219040cd Update org.mockito:mockito-core to 5.10.0\n1fd8b0f7d Update org.apache.commons:commons-compress to 1.26.0\n1f9feb613 Update byte-buddy to 1.14.12\nf4f992cdc Add SystemReader.Delegate to reduce boiler-plate code needed to subclass\n426d67848 storage.file: Do not throw NSFE when deleting tmp files\n67142cacb FS.detectSymlinkSupport: fix a race\nacf21c0bc RefDirectory: Do not unlock until after deleting loose ref\n86ef2d531 Add missing javadoc description for declared exception\n29c89d1f0 SnapshottingRefDirectory: Invalidate snapshot after locking ref for update\n8197cab33 SnapshottingRefDir: Replace lambas with method refs\n8b49e01ab SnapshottingRefDir: Reduce casts with overrides\n99333e75b [errorprone] Fix wrong comparison which always evaluated to false\naf5d4d37a [errorprone] Remove unnecessary comparison\n617f89131 Errorprone EscapedEntity: Do not use HTML entities inside @code javadoc\ne5fd2409c ChangedPathFilter: Suppress warning about backing array (errorprone)\n15363e4c3 PackWriterBitmapPreparer: Do not generate bitmaps for excessive branch tips.\ne6d83d61e Don\u0027t use localized String during JVM shutdown\n5afb92aad RawParseUtils.nextLfSkippingSplitLines: fulfil contract as stated\n5eff1dd4c [gpg] Refactor the GpgSignatureVerifier\nb079968cd RawParseUtils: utility method to get a header value\n747618358 Improve handling of NFS stale handle errors\nca54c5176 Fix handling of missing pack index file\n60af389b4 Add tests for handling pack files removal during fetch\n906c2bebe RebaseCommand: fix stopping on root commit conflicts\nc701c01b4 Improve handling of NFS stale handle errors\ne0910eda3 Fix handling of missing pack index file\nc64664925 CherryPick: add ability to customise cherry-picked commit message\n74471b8d7 RawParseUtils: Add missing @since tag for new API method\nf94619d49 Silence API warning for new constant\n18d0924a4 [ssh] Bump Apache MINA sshd 2.11.0 -\u003e 2.12.0\nb4c66104f Introduce a PriorityQueue sorting RevCommits by commit timestamp\n2d52df154 Remove org.eclipse.jgit.benchmark/.factorypath\n10c5c17eb Update jmh to 1.37 for org.eclipse.jgit.benchmark\nba5adc4ce Add tests for handling pack files removal during fetch\nee4443091 PackWriterBitmapPreparer: Set limit on excessive branch count\n81f1c0209 Update jna to 5.14.0\n307885377 DfsInserter/PackParser: keep min size for index in the inserter\nd3a5637d9 JGit v5.13.3.202401111512-r\n8116f66b9 FooterLines: handle extraction from messages without headers\n2177bed9a Silence API warnings\n331fa023e Remove invalid/unnecessary Maven settings\ne712b4716 Make sure ref to prune is in packed refs\n170244d05 Checkout: better directory handling\n\nChange-Id: I1bc4f890ddd8dd1ebd83a570601695767da8f687\n"
    },
    {
      "commit": "c75eb8db1ae90e5013ead20c6ecdcfae0b9202df",
      "tree": "7b6e8a88e70033708cbbe79bd18ec267f15a5ffe",
      "parents": [
        "f035c29d417ea9a36819f0d7af62aa6786265d28"
      ],
      "author": {
        "name": "Matthias Sohn",
        "email": "matthias.sohn@sap.com",
        "time": "Fri Sep 13 22:51:45 2024 +0200"
      },
      "committer": {
        "name": "Matthias Sohn",
        "email": "matthias.sohn@sap.com",
        "time": "Fri Sep 13 23:07:30 2024 +0200"
      },
      "message": "Update bazlets to de7597593918677465f8ef4330a62f0b9a50f81c\n\nThis fixes ./tools/eclipse/project.py which failed with the error:\nError: \u0027JavaInfo\u0027 value has no field or method \u0027transitive_runtime_deps\u0027\n\nChange-Id: Id0a52e478391e9b1deda1d07578af66e2d330b33\n"
    },
    {
      "commit": "f035c29d417ea9a36819f0d7af62aa6786265d28",
      "tree": "351500ec5fb0be39c6a18c1dac642cf062279546",
      "parents": [
        "83e5a1b4a245d139e4064eb905050722d06c3426",
        "e1a001bb4b5b46ac1182e353af75a91df1bbe722"
      ],
      "author": {
        "name": "Matthias Sohn",
        "email": "matthias.sohn@gmail.com",
        "time": "Fri Sep 13 21:04:49 2024 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Sep 13 21:04:49 2024 +0000"
      },
      "message": "Merge changes I238c263b,Ifaa6867b,Id42dcb9e,Ie31b1db1,I3fca94f2, ...\n\n* changes:\n  Update JGit to b1cc74b75\n  Update jetty to 9.4.53.v20231009\n  Update byte-buddy to 1.14.9\n  Update org.mockito:mockito-core to 5.6.0\n  Update com.ibm.icu:icu4j to 74.2\n  Update ch.qos.reload4j:reload4j to 1.2.25\n  Update com.google.code.gson:gson to 2.10.1\n  Update commons-codec:commons-codec to 1.16.0\n  Update com.googlecode.javaewah:JavaEWAH to 1.2.3\n  Update org.apache.commons:commons-compress to 1.25.0\n"
    },
    {
      "commit": "83e5a1b4a245d139e4064eb905050722d06c3426",
      "tree": "26e1e02a48fb68374b9e05015dc4c9ec9ccea1d0",
      "parents": [
        "c7f7328e6412256cb6da5f7ae002ebcef8bcf5a3"
      ],
      "author": {
        "name": "Ivan Frade",
        "email": "ifrade@google.com",
        "time": "Fri Aug 30 10:46:03 2024 -0700"
      },
      "committer": {
        "name": "Ivan Frade",
        "email": "ifrade@google.com",
        "time": "Fri Aug 30 11:34:55 2024 -0700"
      },
      "message": "VisibilityChecker: use #areAllReachable with a stream of starters\n\nThe variant of #areAllReachable receiving the starters as a Collection\nis deprecated. Use the suggested alternative that receive them as\nStream.\n\nThe deprecated version will be removed in JGit 7.0\n\nChange-Id: If24e8f2c98edfdcfefc0c628c4c754709f54a5c5\n"
    },
    {
      "commit": "c7f7328e6412256cb6da5f7ae002ebcef8bcf5a3",
      "tree": "3a760cd2ad4d8a014a926ae01ecba569da983b6a",
      "parents": [
        "4ea413d5f74bf4a512831d3b334cc09cccbd1269"
      ],
      "author": {
        "name": "Xing Huang",
        "email": "xingkhuang@google.com",
        "time": "Thu Aug 15 13:14:11 2024 -0500"
      },
      "committer": {
        "name": "Xing Huang",
        "email": "xingkhuang@google.com",
        "time": "Thu Aug 15 13:43:52 2024 -0500"
      },
      "message": "LogDetail: update to use \"\u0026\u0026\" over \"and\"\n\nSoy\u0027s and / or operators always return a Boolean. Recently, \u0026\u0026 and || operators have been introduced that match JavaScript semantics, which return either the first or second operand depending on truthiness.\n\nChange-Id: Icadcfda890fe83de8f34525c5d7f997f36d4dd09\n"
    },
    {
      "commit": "4ea413d5f74bf4a512831d3b334cc09cccbd1269",
      "tree": "1e72d6fe8433fbe588e98094fe5678b9ef8c4d20",
      "parents": [
        "386712e202c27d1ff565c7dc64a4127cc1460664"
      ],
      "author": {
        "name": "Xing Huang",
        "email": "xingkhuang@google.com",
        "time": "Wed Aug 14 16:20:36 2024 -0500"
      },
      "committer": {
        "name": "Xing Huang",
        "email": "xingkhuang@google.com",
        "time": "Wed Aug 14 16:20:36 2024 -0500"
      },
      "message": "BlameCacheImpl: making loadRegions() public\n\nMaking loadRegions() public will give us more customization options by allowing us to pass in any form of pre-determined BlameGenerator. Since this is a static method, no state is recorded within the BlameCacheImpl object, this should be a no-op.\n\nChange-Id: I8f684bcda237ca849743a2fde3a3b8cc9955eabe\nSigned-off-by: Xing Huang \u003cxingkhuang@google.com\u003e\n"
    },
    {
      "commit": "386712e202c27d1ff565c7dc64a4127cc1460664",
      "tree": "8d63a3eb972f12a38f9e8637698dde5a7ea7ece4",
      "parents": [
        "84fb315541de4364c63a55bda7b96a1a44e0637a"
      ],
      "author": {
        "name": "Xing Huang",
        "email": "xingkhuang@google.com",
        "time": "Wed Aug 14 14:47:56 2024 -0500"
      },
      "committer": {
        "name": "Xing Huang",
        "email": "xingkhuang@google.com",
        "time": "Wed Aug 14 14:50:13 2024 -0500"
      },
      "message": "Region: making getEnd() public\n\nAll getters within the Region object are public except for getEnd(), even its start equivalent of \"getStart()\" is public. Making getEnd() public will make doing Region object validation outside of its package easier.\n\nChange-Id: Ied6a719e31f7108a7c250469c4b32bf60c0495a2\n"
    },
    {
      "commit": "84fb315541de4364c63a55bda7b96a1a44e0637a",
      "tree": "9d509e19e086f554b2169d8c5bddce3f203a1dec",
      "parents": [
        "c27f65e6093e84e3a4ccb9f5d759e98c1f1f4a48"
      ],
      "author": {
        "name": "Ilmari Lauhakangas",
        "email": "ilmari.lauhakangas@libreoffice.org",
        "time": "Sat Nov 11 15:05:56 2023 +0200"
      },
      "committer": {
        "name": "Ilmari Lauhakangas",
        "email": "ilmari.lauhakangas@libreoffice.org",
        "time": "Fri Jun 07 11:40:20 2024 +0300"
      },
      "message": "Add link to file view for creating a Gerrit change/edit\n\nBug: issue 40011246\nChange-Id: I726260840191f50eda9e1235bd2abd40eed11af8\n"
    },
    {
      "commit": "c27f65e6093e84e3a4ccb9f5d759e98c1f1f4a48",
      "tree": "af003f306f2952340027d5fd48ffd0d53ff43658",
      "parents": [
        "3ad19978a3149e7ae5bebd2ddbdf26252ec16e89"
      ],
      "author": {
        "name": "Jack Rosenthal",
        "email": "jrosenth@chromium.org",
        "time": "Tue Feb 13 14:46:25 2024 -0700"
      },
      "committer": {
        "name": "Jack Rosenthal",
        "email": "jrosenth@chromium.org",
        "time": "Tue Feb 13 14:46:25 2024 -0700"
      },
      "message": "DevServer: Fix compilation error for getUserKey\n\nI got a compilation error while trying to run run_dev.sh:\n\n% ~/gitiles/tools/run_dev.sh\nINFO: Invocation ID: 45647a11-06cb-40c8-a9bd-cae61c5802c0\nINFO: Analyzed target //java/com/google/gitiles/dev:dev (0 packages loaded, 0 targets configured).\nERROR: /home/jrosenth/gitiles/java/com/google/gitiles/dev/BUILD:3:13: Building java/com/google/gitiles/dev/liblib.jar (2 source files) failed: (Exit 1): java failed: error executing Javac command (from target //java/com/google/gitiles/dev:lib) external/remotejdk21_linux/bin/java \u0027--add-exports\u003djdk.compiler/com.sun.tools.javac.api\u003dALL-UNNAMED\u0027 \u0027--add-exports\u003djdk.compiler/com.sun.tools.javac.main\u003dALL-UNNAMED\u0027 ... (remaining 19 arguments skipped)\njava/com/google/gitiles/dev/DevServer.java:215: error: [ReturnMissingNullable] Method returns a definitely null value but is not annotated @Nullable\n          return null;\n          ^\n    (see https://errorprone.info/bugpattern/ReturnMissingNullable)\n  Did you mean \u0027public @Nullable Object getUserKey() {\u0027?\nTarget //java/com/google/gitiles/dev:dev failed to build\nUse --verbose_failures to see the command lines of failed build steps.\nINFO: Elapsed time: 3.255s, Critical Path: 3.18s\nINFO: 3 processes: 2 internal, 1 linux-sandbox.\nERROR: Build did NOT complete successfully\n\nThere appears to be no negative consequence to using an empty string\nhere instead, so change to that.\n\nChange-Id: I86f574c89e351e649f6d9d6cd19582cb560f9b28\n"
    },
    {
      "commit": "3ad19978a3149e7ae5bebd2ddbdf26252ec16e89",
      "tree": "7b4b3d2969633a618b6f484ad513c4cf2f0435ed",
      "parents": [
        "c5c82509b1814d6732b4bd09175b8fc7c489b673"
      ],
      "author": {
        "name": "Jack Rosenthal",
        "email": "jrosenth@chromium.org",
        "time": "Tue Feb 13 14:45:28 2024 -0700"
      },
      "committer": {
        "name": "Jack Rosenthal",
        "email": "jrosenth@chromium.org",
        "time": "Tue Feb 13 14:45:28 2024 -0700"
      },
      "message": "tools/run_dev.sh: Allow specifying BAZEL\n\nOn my system, I installed bazelisk as suggested by the developer\nguide.  Allow users to export BAZEL\u003d... to specify which bazel command\nthey want to use to build.\n\nChange-Id: I15c5a575e757a8f99104aa01a75c28b8c448de15\n"
    },
    {
      "commit": "c5c82509b1814d6732b4bd09175b8fc7c489b673",
      "tree": "0f34e4a38fc8fbdea01d5ab5655a0fde3ebafc57",
      "parents": [
        "e260f606bc9fcdebde0257bba18b580742aa28a7",
        "e15e8ffeeebd7defdfe9ba2d3cea8ba062472570"
      ],
      "author": {
        "name": "Sam Delmerico",
        "email": "delmerico@google.com",
        "time": "Sat Feb 10 01:05:25 2024 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sat Feb 10 01:05:25 2024 +0000"
      },
      "message": "Merge \"Update Soy templates to use the ! operator instead of \u0027not\u0027.\""
    },
    {
      "commit": "e15e8ffeeebd7defdfe9ba2d3cea8ba062472570",
      "tree": "0c9b50c5f4fbd4721d1c274b2f106c2f752cc8c8",
      "parents": [
        "37e5d8f5e41be26743017a10cd80822273f30726"
      ],
      "author": {
        "name": "Sam Delmerico",
        "email": "delmerico@google.com",
        "time": "Fri Feb 09 16:55:46 2024 -0800"
      },
      "committer": {
        "name": "Sam Delmerico",
        "email": "delmerico@google.com",
        "time": "Sat Feb 10 01:05:18 2024 +0000"
      },
      "message": "Update Soy templates to use the ! operator instead of \u0027not\u0027.\n\nA small step towards converging Soy with TypeScript syntax.\n\nTest: bazel test //...\nTest: verified that `bazel test //...` fails without parent commit to update Soy version\nChange-Id: I82189b043aca357f2562d77e83526815e3183d75\n"
    },
    {
      "commit": "e260f606bc9fcdebde0257bba18b580742aa28a7",
      "tree": "663618353c6ba4f102db77c6e59a3859991a0283",
      "parents": [
        "2c42c5532321f192979d9bc36bc0773909eaa55a",
        "37e5d8f5e41be26743017a10cd80822273f30726"
      ],
      "author": {
        "name": "Sam Delmerico",
        "email": "delmerico@google.com",
        "time": "Sat Feb 10 01:04:46 2024 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sat Feb 10 01:04:46 2024 +0000"
      },
      "message": "Merge \"update soy dependency to version 2024-01-30\""
    },
    {
      "commit": "37e5d8f5e41be26743017a10cd80822273f30726",
      "tree": "27fe5a78a99499e95216e9f1a0832c1ca87ec5d0",
      "parents": [
        "132683bf56881c674d630e5524c7b5260228a7d1"
      ],
      "author": {
        "name": "Sam Delmerico",
        "email": "delmerico@google.com",
        "time": "Fri Feb 09 16:55:33 2024 -0800"
      },
      "committer": {
        "name": "Sam Delmerico",
        "email": "delmerico@google.com",
        "time": "Sat Feb 10 01:02:47 2024 +0000"
      },
      "message": "update soy dependency to version 2024-01-30\n\nTest: bazel test //...\nChange-Id: I3a778b61a703ba002d68ba47d5a95b00e6d0186c\n"
    },
    {
      "commit": "2c42c5532321f192979d9bc36bc0773909eaa55a",
      "tree": "02f402f43fd1a8c15abf139d23f321fa0f909e79",
      "parents": [
        "b69f57457006b342e17489add45efd80a199d159"
      ],
      "author": {
        "name": "Sam Delmerico",
        "email": "delmerico@google.com",
        "time": "Thu Feb 01 22:41:29 2024 +0000"
      },
      "committer": {
        "name": "Ivan Frade",
        "email": "ifrade@google.com",
        "time": "Thu Feb 01 22:47:30 2024 +0000"
      },
      "message": "DocServletTest: remove println\n\nChange-Id: Ied87b9e9fd61fa48f02bd0a7086902212d8c9635\n"
    },
    {
      "commit": "b69f57457006b342e17489add45efd80a199d159",
      "tree": "3e126797fb032884a3624af3e15717a5a4574aa2",
      "parents": [
        "2e56e66997536548517aa9a582c7a62cd008caed"
      ],
      "author": {
        "name": "Sam Delmerico",
        "email": "delmerico@google.com",
        "time": "Thu Feb 01 14:02:33 2024 -0800"
      },
      "committer": {
        "name": "Sam Delmerico",
        "email": "delmerico@google.com",
        "time": "Thu Feb 01 14:02:33 2024 -0800"
      },
      "message": "add unit test for pretty\u003dfuller query parameter\n\nChange-Id: I07c7fcddc9953f9971c0ff4592f4b81cc6145528\n"
    },
    {
      "commit": "2e56e66997536548517aa9a582c7a62cd008caed",
      "tree": "cb99444029dfbeb4c45238490bbe891c794dddd6",
      "parents": [
        "e4ae3599cb960c21bf490b462e0a68e7e5f0adaa"
      ],
      "author": {
        "name": "Sam Delmerico",
        "email": "delmerico@google.com",
        "time": "Wed Jan 31 14:47:04 2024 -0800"
      },
      "committer": {
        "name": "Sam Delmerico",
        "email": "delmerico@google.com",
        "time": "Thu Feb 01 11:10:33 2024 -0800"
      },
      "message": "add unit test for Next button link in Log view\n\nChange-Id: Id2c121148fee158af30fb848e80449078b4fd31b\n"
    },
    {
      "commit": "e4ae3599cb960c21bf490b462e0a68e7e5f0adaa",
      "tree": "942706df71c6c6eb8113c2501c917fa6f8a5c31e",
      "parents": [
        "132683bf56881c674d630e5524c7b5260228a7d1"
      ],
      "author": {
        "name": "Sam Delmerico",
        "email": "delmerico@google.com",
        "time": "Wed Jan 31 14:44:58 2024 -0800"
      },
      "committer": {
        "name": "Sam Delmerico",
        "email": "delmerico@google.com",
        "time": "Thu Feb 01 11:10:24 2024 -0800"
      },
      "message": "ensure that s\u003d param is set correctly for previous link in log\n\nOn the second page of results in a log view, the Previous button links back\nto itself rather than to the first page of results because the start param,\ns\u003d, was not properly removed.\n\nChange-Id: If6102b727740438e45f549bdda053b7089955001\n"
    },
    {
      "commit": "132683bf56881c674d630e5524c7b5260228a7d1",
      "tree": "7cc4e7b0547d9a3bc3397e6ef95338f82a18efc7",
      "parents": [
        "2527109f4bae6b09dd451c366018c92827a0af78"
      ],
      "author": {
        "name": "David Ostrovsky",
        "email": "david@ostrovsky.org",
        "time": "Mon Jan 22 06:41:41 2024 +0100"
      },
      "committer": {
        "name": "David Ostrovsky",
        "email": "david@ostrovsky.org",
        "time": "Mon Jan 22 06:52:39 2024 +0100"
      },
      "message": "Bump Bazel version to 7.0.1\n\nIn Bazel 7.x release line, the bzlmod feature is activated per default,\nso that we need to disable it. See this issue for more details: [1].\n\n[1] https://github.com/bazelbuild/bazel/issues/18958\n\nChange-Id: I252944a7d388daae676a420709f0e6c2002588d7\n"
    },
    {
      "commit": "2527109f4bae6b09dd451c366018c92827a0af78",
      "tree": "c6678264d528ade360ce40b568fb2cc71dd64069",
      "parents": [
        "37e8d85bedea77f12dc151f2f12d364feee95b18"
      ],
      "author": {
        "name": "David Ostrovsky",
        "email": "david@ostrovsky.org",
        "time": "Mon Jan 22 06:41:18 2024 +0100"
      },
      "committer": {
        "name": "David Ostrovsky",
        "email": "david@ostrovsky.org",
        "time": "Mon Jan 22 06:50:57 2024 +0100"
      },
      "message": "Bump bazlets version to 50f43f450f\n\nDepends-On: https://gerrit-review.googlesource.com/c/bazlets/+/403857\nChange-Id: Iabb56521e55353e9fd3911b4ec48529a9f6ce13f\n"
    },
    {
      "commit": "37e8d85bedea77f12dc151f2f12d364feee95b18",
      "tree": "dc633124ef1d9e1ab5bb979d0570f653f594b0f4",
      "parents": [
        "e5277967e73c699d2e0f4c53ad7bfbf45f70eaae",
        "125b70a5099c6e5e4e3d88daf9d3e00d5cd0b5e8"
      ],
      "author": {
        "name": "Tim Zhou",
        "email": "timzhou@google.com",
        "time": "Thu Jan 11 18:50:01 2024 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Jan 11 18:50:01 2024 +0000"
      },
      "message": "Merge \"If pretty\u003dfuller set verbose to true\""
    },
    {
      "commit": "125b70a5099c6e5e4e3d88daf9d3e00d5cd0b5e8",
      "tree": "258470da6dacd3d6d4df6e7525cacfc81bf2d6f6",
      "parents": [
        "10f92e0b17bfa239e194566b8144c4cd755ad4a0"
      ],
      "author": {
        "name": "Tim Zhou",
        "email": "timzhou@google.com",
        "time": "Wed Jan 10 17:55:37 2024 +0000"
      },
      "committer": {
        "name": "Tim Zhou",
        "email": "timzhou@google.com",
        "time": "Wed Jan 10 17:55:37 2024 +0000"
      },
      "message": "If pretty\u003dfuller set verbose to true\n\nChange-Id: Ieee307546c1edbd4193d0a8dd3d8ed9fe85da5e7\n"
    },
    {
      "commit": "e5277967e73c699d2e0f4c53ad7bfbf45f70eaae",
      "tree": "1f6eb82acc6d316b896461d35f06682660fb95ad",
      "parents": [
        "f506980b95c1a6e5c4da170ce37dd6f0adb28f2b"
      ],
      "author": {
        "name": "Matthias Sohn",
        "email": "matthias.sohn@sap.com",
        "time": "Tue Jan 09 16:25:07 2024 +0100"
      },
      "committer": {
        "name": "Matthias Sohn",
        "email": "matthias.sohn@sap.com",
        "time": "Tue Jan 09 16:25:07 2024 +0100"
      },
      "message": "Bump version to 1.4.0\n\nChanges since 1.3.0:\n\n$ git log --oneline --no-merges v1.3.0..HEAD\nf506980 Upgrade soy to 2023-12-13\n10f92e0 Add fuller template for gitiles pretty logging\n9dd1a2e Reapply \"Soy: bump version and use new \"??\" operator\"\n70d9a1b Migrate usages of `and`/`or` to `\u0026\u0026`/`||`.\n1946930 Revert \"Soy: bump version and use new \"??\" operator\"\nb49a952 Common.soy: make explictely nullable the css parameter\n3cc3548 Soy: bump version and use new \"??\" operator\nd62af25 Enable more errorprone patterns\n484ec1a Update bazel to 6.3.2\n1210230 [errorprone] Fix JavaUtilDate\ncf746f0 Update JGit to dc27dbd2f\nd8e7ffb [errorprone] Fix see InvalidInlineTag\ne2e3c6a [errorprone] Fix BadImport\nba9eb87 [errorprone] Fix EscapedEntity\n8516506 Improve tools/run_dev.sh to allow custom flags\n0f85ecb [errorprone] Remove unnecessary parentheses\nc156c96 [errorprone] Annotate method returning null as nullable\n30ea267 [errorprone] Remove null check for value which cannot be null\n4a11466 [errorprone] Suppress AnnotateFormatMethod\n0cda867 [errorprone] Fix empty javadoc block tags\n010d3c3 [errorprone] Use Guava Splitter to avoid String#split\nd5ce821 [errorprone] Annotate method formatting string\na0d00c5 [errorprone] Add missing javadoc summary\n97196ea Update java-prettify to 32fa081a797a\n\nChange-Id: I4f9a80d1027ba98e99e913b58bf7536fba51ed5d\n"
    },
    {
      "commit": "e1a001bb4b5b46ac1182e353af75a91df1bbe722",
      "tree": "7de9531e3dc530731adcc74ef715992db299b099",
      "parents": [
        "2a5b48f7f915b6dde4a8c2a6e235eb8ea452ff38"
      ],
      "author": {
        "name": "Matthias Sohn",
        "email": "matthias.sohn@sap.com",
        "time": "Tue Dec 26 16:22:11 2023 +0100"
      },
      "committer": {
        "name": "Matthias Sohn",
        "email": "matthias.sohn@sap.com",
        "time": "Tue Dec 26 16:23:43 2023 +0100"
      },
      "message": "Update JGit to b1cc74b75\n\ngit log --oneline --no-merges dc27dbd2f..b1cc74b75\nb1cc74b75 Update maven plugins\n2199b74ce Update org.eclipse.dash:license-tool-plugin to 1.1.0\nff20da9b8 Enable using slf4j 2.x\n80a2b067f Update Tycho to 4.0.4\nb450ff180 Update mockito to 5.8.0\n3cefca094 Add 4.31 target platform and update orbit to 4.31\na00afad54 Update ecj to 3.36.0\nd1189a1cd Renormalize line endings based on .gitattributes\neb0dd3a4e Configure .gitattributes to manage line endings\n40e97af2d Normalize line endings to LF for all text files\n788487316 BasePackFetchConnection: Skip object/ref lookups if local repo is empty\nfaa50c683 LooseObjects: Use File#exists when possible\n1ab2c73b4 Remove invalid spotbugs configuration\n5553f3b30 Fix PMD plugin configuration\nb2abab271 DfsReader: give subclasses visiblity over the pack bitmap index\ne25bf9573 PackBitmapIndex/StoredBitmap: Expose size and counts\n52c18ae15 PackWriter/Statistics: Remove the bitmapt hit stats\na2fed4293 Configure Github issue reporting\nab132937f FooterLine: Protect from ill-formed message\n4592603b9 API filter for PackStatistics.objectsWithBitmapsFound\ndb5ce6b5c StartGenerator: Fix parent rewrite with non-default RevFilter\n6a5bde568 Update MANIFEST.MF\nb05894436 Document option gc.writeCommitGraph\n6cdd04aa4 Bump last release version to 6.8.0.202311291450-r\nb54592c8e Prepare 6.9.0-SNAPSHOT builds\n8ea5409ec BitmapWalkerTest: New test for the walker\n5e563e1ba PackWriter: store the objects with bitmaps in the statistics\n555224258 FooterLine: First line cannot be a footer\nacf97be2d Reapply \"Improve footer parsing to allow multiline footers.\"\ne99fb6edc Revert \"Improve footer parsing to allow multiline footers.\"\n796fb2e5c Prepare 6.8.1-SNAPSHOT builds\nc43560487 JGit v6.8.0.202311291450-r\n6514a46a3 Rename method parameter to fix warning about hidden field\n29ad7d56e Fix warnings about empty control flow statements\ne4abd0123 BitmapIndexImpl: externalize error message\n232813bfc Suppress not-externalized string warnings\nff0ec5c61 Silence API error for new method BitmapIndex#addBitmapLookupListener\n5a717a705 Update Orbit to orbit-aggregation/2023-12\nef901e9ae Adapt to type parameter added in commons-compress 1.25.0\n340cc787a Improve footer parsing to allow multiline footers.\n2a739ad2c Make the tests buildable by bazel test\n9a05ca42b Prepare 6.8.0-SNAPSHOT builds\n7bc697dfd JGit v6.8.0.202311212206-rc1\naab75dba7 BitmapIndex: Add interface to track bitmaps found (or not)\nc0d15c2ab BitmapWalker: Remove BitmapWalkListener\ncd8322091 Update repository URLs in CONTRIBUTING.md\n823b6a45f Fix typo in FileUtils.isStaleFileHandle() javadoc\ne4a341db4 Fix branch ref exist check\n52af8dbaf gpg.bc: Supress errorprone InsecureCryptoUsage\n5c173c632 Adjust javadoc to pass errorprone checks\n705e3d686 Update org.apache.commons:commons-compress to 1.25.0\n2986d39ae Fix annotation of deprecated constant CONFIG_KEY_STREAM_FILE_TRESHOLD\ne612c2522 BitmapWalkListener: Use plain interface with noop instance\n4d82d0aa1 BitmapWalkListener: Add method and rename for commits\n8af2f785e Update bouncycastle to 1.77\n754a1b492 PatchApplier: wrap output\u0027s TemporaryBuffer with a CountingOutputStream\nd3f711ca1 BitmapWalker: announce walked objects via listener interface\nd9568eda9 Prepare 6.8.0-SNAPSHOT builds\n8db605620 Update jetty to 10.0.18\nac0a99597 SSH: bump org.apache.sshd to 2.11.0\n375710194 JGit v6.8.0.202311151710-m2\n91c914622 Fix typo in constant name CONFIG_KEY_STREAM_FILE_TRESHOLD\n4aaf8cad9 Simplify StringUtils#commonPrefix\n4f18c5095 Optimize RefDirectory.getRefsByPrefix(String...)\nfcea1fe49 CommitGraphWriter: Remove unnecesary progress update call\nb761a0fc3 Use try-with-resource to ensure UploadPack is closed\n32f7db784 Fix hiding field warning\n15c6947fd Fix warning for empty code blocks\n3652dd437 Fix boxing warnings\n3ca786d76 errorprone: remove unnecessary parentheses\n50d670133 Update mockito to 5.7.0 and bytebuddy to 1.14.9\n6007371e3 Enable Maven reproducible builds\n97afcb050 Upgrade bazlets to the latest revision\n7ac2d2573 Revert \"Optimise Git protocol v2 `ref-prefix` scanning\"\n38344badf Document GIT_TRACE_PERFORMANCE to show timings\n8e9eab799 config-options.md: fix sort order\nac70632f5 ComboBitset: Add Javadoc\n593fbf7c3 CommitGraphWriter: Add progress monitor to bloom filter computation\n5207bf070 CommitGraphWriter: Use ProgressMonitor from the OutputStream\nc46b54eea CommitGraphWriter: Unnest generation-number progress\n3937300f3 Optimise Git protocol v2 `ref-prefix` scanning\n1c320d0d4 UploadPackTest: Cover using wanted-refs as advertised set\n5f563e386 UploadPack: use want-refs as advertised set in fetch v2\n093bde518 BasePackFetchConnection: Avoid full clone with useNegotiationTip\n7b2005d52 .gitignore: ignore all Maven output directories `target/`\n26d6c325d benchmarks: use org.eclipse.jgit-parent as parent pom\n8ca649c16 Generate SBOMs using cyclonedx maven plugin\nf91afe5f5 DfsPackFile: Do not attempt to read stream if pack doesn\u0027t have it\n9323b430b PackObjectSizeIndexLoader: Log wrong bytes on exception\nc89f7b874 Silence API warnings for API added in 5.13.3\n0f078da4e FileBasedConfig: in-process synchronization for load() and save()\nf6774fa8e FileUtils.rename(): better retry handling\ncb46ee354 FileBasedConfig: ensure correct snapshot if no file\n621685d3c DeleteBranchCommand: update config only at the end\necf94d159 Config.removeSection() telling whether it changed the config\nf93ccb7fd RebaseCommand: return correct status on stash apply conflicts\n0b5d4c3aa Use net.i2p.crypto.eddsa 0.3.0 from new Orbit build\n4d6671b4c PackConfig: fix @since tags\n244165fc5 Remove unused API problem filters\nf103a1d5c Add support for git config repack.packKeptObjects\nf5f4bf0ad Do not exclude objects in locked packs from bitmap processing\n\nChange-Id: I238c263b459b4920beefd7a66f1108c05f1d076a\n"
    },
    {
      "commit": "2a5b48f7f915b6dde4a8c2a6e235eb8ea452ff38",
      "tree": "87c89fc4923b6e025b2f272e0029c252100107c5",
      "parents": [
        "14d866719e4fac84c1ccfa72da8929234f3cd5f6"
      ],
      "author": {
        "name": "Matthias Sohn",
        "email": "matthias.sohn@sap.com",
        "time": "Tue Dec 26 16:18:07 2023 +0100"
      },
      "committer": {
        "name": "Matthias Sohn",
        "email": "matthias.sohn@sap.com",
        "time": "Tue Dec 26 16:19:17 2023 +0100"
      },
      "message": "Update jetty to 9.4.53.v20231009\n\nRelease notes: https://github.com/jetty/jetty.project/releases/tag/jetty-9.4.53.v20231009\n\nChange-Id: Ifaa6867be304a2c855d787e1e9f9e0aea2708647\n"
    },
    {
      "commit": "14d866719e4fac84c1ccfa72da8929234f3cd5f6",
      "tree": "a79085a78b9d236c3822ac848f0cb6f828f7fbd7",
      "parents": [
        "97502d9900859c6feb8af76d1ed46d95f725ec5c"
      ],
      "author": {
        "name": "Matthias Sohn",
        "email": "matthias.sohn@sap.com",
        "time": "Tue Dec 26 16:14:23 2023 +0100"
      },
      "committer": {
        "name": "Matthias Sohn",
        "email": "matthias.sohn@sap.com",
        "time": "Tue Dec 26 16:14:23 2023 +0100"
      },
      "message": "Update byte-buddy to 1.14.9\n\nChange-Id: Id42dcb9e758c5d89949933fe24edb74b43a0aa35\n"
    },
    {
      "commit": "97502d9900859c6feb8af76d1ed46d95f725ec5c",
      "tree": "23d2c0efec53b947b77c103ed19dbe919d0e1b20",
      "parents": [
        "3122006446c01d6f6a1b438dabbe1f9864f3131a"
      ],
      "author": {
        "name": "Matthias Sohn",
        "email": "matthias.sohn@sap.com",
        "time": "Tue Dec 26 16:12:30 2023 +0100"
      },
      "committer": {
        "name": "Matthias Sohn",
        "email": "matthias.sohn@sap.com",
        "time": "Tue Dec 26 16:12:30 2023 +0100"
      },
      "message": "Update org.mockito:mockito-core to 5.6.0\n\nChange-Id: Ie31b1db1867079147fce08df05185eb72fffdcc7\n"
    },
    {
      "commit": "3122006446c01d6f6a1b438dabbe1f9864f3131a",
      "tree": "119033174f6746113bb5450621d0474348cfe27d",
      "parents": [
        "89587aa97ad2858e2f57c8a0cd95e3fa4646edaf"
      ],
      "author": {
        "name": "Matthias Sohn",
        "email": "matthias.sohn@sap.com",
        "time": "Tue Dec 26 16:09:56 2023 +0100"
      },
      "committer": {
        "name": "Matthias Sohn",
        "email": "matthias.sohn@sap.com",
        "time": "Tue Dec 26 16:09:56 2023 +0100"
      },
      "message": "Update com.ibm.icu:icu4j to 74.2\n\nChange-Id: I3fca94f2e0dabdb90d7bbab27f204b6c32b7881b\n"
    },
    {
      "commit": "89587aa97ad2858e2f57c8a0cd95e3fa4646edaf",
      "tree": "c03b9ec9ad890d8fecbd7a055becd3d28971a2eb",
      "parents": [
        "61570ba1e74fc6153790a4e2ae7b4c40fe8c0887"
      ],
      "author": {
        "name": "Matthias Sohn",
        "email": "matthias.sohn@sap.com",
        "time": "Tue Dec 26 15:47:54 2023 +0100"
      },
      "committer": {
        "name": "Matthias Sohn",
        "email": "matthias.sohn@sap.com",
        "time": "Tue Dec 26 15:47:54 2023 +0100"
      },
      "message": "Update ch.qos.reload4j:reload4j to 1.2.25\n\nRelease notes: https://reload4j.qos.ch/news.html\n\nChange-Id: Ice07963843d7afa2e84296df540f16e1b5ecbc01\n"
    },
    {
      "commit": "61570ba1e74fc6153790a4e2ae7b4c40fe8c0887",
      "tree": "e52cf8caf27ab2ab98c22c03a7c9d5009b8721d8",
      "parents": [
        "76c4713ec9ea52c57ba39f1cf9e8bc05d3d5ed91"
      ],
      "author": {
        "name": "Matthias Sohn",
        "email": "matthias.sohn@sap.com",
        "time": "Tue Dec 26 15:43:34 2023 +0100"
      },
      "committer": {
        "name": "Matthias Sohn",
        "email": "matthias.sohn@sap.com",
        "time": "Tue Dec 26 15:43:34 2023 +0100"
      },
      "message": "Update com.google.code.gson:gson to 2.10.1\n\nJGit updated to this version in 1cff378a85.\n\nChange-Id: Ie389ad7440b176556012d59eb2030be2d5e32981\n"
    },
    {
      "commit": "76c4713ec9ea52c57ba39f1cf9e8bc05d3d5ed91",
      "tree": "4172e8c04d1be68b977328e1106fdf721a232c86",
      "parents": [
        "071a31459947be881925b00e5fc8ff08a65edd29"
      ],
      "author": {
        "name": "Matthias Sohn",
        "email": "matthias.sohn@sap.com",
        "time": "Tue Dec 26 15:30:58 2023 +0100"
      },
      "committer": {
        "name": "Matthias Sohn",
        "email": "matthias.sohn@sap.com",
        "time": "Tue Dec 26 15:30:58 2023 +0100"
      },
      "message": "Update commons-codec:commons-codec to 1.16.0\n\nJGit updated to this version in eecd93714b.\n\nChange-Id: Ife7b4eb77e1980952e902a749501f134e42def1d\n"
    },
    {
      "commit": "071a31459947be881925b00e5fc8ff08a65edd29",
      "tree": "2245d8472ca753ad0b9a6fff4051579662a82da5",
      "parents": [
        "619b4a89663206a0a50e132b80067cb445734e8e"
      ],
      "author": {
        "name": "Matthias Sohn",
        "email": "matthias.sohn@sap.com",
        "time": "Tue Dec 26 10:47:03 2023 +0100"
      },
      "committer": {
        "name": "Matthias Sohn",
        "email": "matthias.sohn@sap.com",
        "time": "Tue Dec 26 10:47:03 2023 +0100"
      },
      "message": "Update com.googlecode.javaewah:JavaEWAH to 1.2.3\n\nJGit updated to this version in ee2143f744.\n\nChange-Id: I54bd6934d32c1dcecff148178a092b44dc72975f\n"
    },
    {
      "commit": "619b4a89663206a0a50e132b80067cb445734e8e",
      "tree": "5d21c4affd32ea01970435464b33e2d6a1fdd408",
      "parents": [
        "f506980b95c1a6e5c4da170ce37dd6f0adb28f2b"
      ],
      "author": {
        "name": "Matthias Sohn",
        "email": "matthias.sohn@sap.com",
        "time": "Tue Dec 26 10:44:48 2023 +0100"
      },
      "committer": {
        "name": "Matthias Sohn",
        "email": "matthias.sohn@sap.com",
        "time": "Tue Dec 26 10:44:48 2023 +0100"
      },
      "message": "Update org.apache.commons:commons-compress to 1.25.0\n\nJGit updated to this new version in 705e3d686.\n\nChange-Id: Idcdabaf42c4e6d2752f10677773dfd8dfe310538\n"
    },
    {
      "commit": "f506980b95c1a6e5c4da170ce37dd6f0adb28f2b",
      "tree": "9bc1d7159651c165070d420d0d97c7de8da770c9",
      "parents": [
        "d0e91e6d9ddc061cb9a96e4f803dc6eee80f7bb2"
      ],
      "author": {
        "name": "Adrià Vilanova Martínez",
        "email": "me@avm99963.com",
        "time": "Sun Dec 17 00:57:29 2023 +0100"
      },
      "committer": {
        "name": "Adrià Vilanova Martínez",
        "email": "me@avm99963.com",
        "time": "Sun Dec 17 00:08:34 2023 +0000"
      },
      "message": "Upgrade soy to 2023-12-13\n\nThis new version includes support for the \u0027\u0026\u0026\u0027/\u0027||\" syntax used in\nchange 397298, which has already been merged. This caused many tests to\nfail.\n\nBug: b/316621446\nChange-Id: I28ebc1f3020584e69868df26c90704ab2d3984b0\n"
    },
    {
      "commit": "d0e91e6d9ddc061cb9a96e4f803dc6eee80f7bb2",
      "tree": "04df3c961b53ce9eeb0e120500c3a620d45aeca1",
      "parents": [
        "2f2434c8c2b20c85d652441cdb547c304e8459f8",
        "10f92e0b17bfa239e194566b8144c4cd755ad4a0"
      ],
      "author": {
        "name": "Tim Zhou",
        "email": "timzhou@google.com",
        "time": "Wed Dec 13 21:41:13 2023 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Dec 13 21:41:13 2023 +0000"
      },
      "message": "Merge \"Add fuller template for gitiles pretty logging\""
    },
    {
      "commit": "10f92e0b17bfa239e194566b8144c4cd755ad4a0",
      "tree": "7fe124e406109e2573eec651cf3e94a8edb227fd",
      "parents": [
        "9dd1a2e1199ccb1b834638827f39915b95b86aa2"
      ],
      "author": {
        "name": "Tim Zhou",
        "email": "timzhou@google.com",
        "time": "Wed Dec 13 20:52:24 2023 +0000"
      },
      "committer": {
        "name": "Tim Zhou",
        "email": "timzhou@google.com",
        "time": "Wed Dec 13 20:55:47 2023 +0000"
      },
      "message": "Add fuller template for gitiles pretty logging\n\nChange-Id: Ia8a918a054f522443335cdd7ee3cf6a8992bb0a2\n"
    },
    {
      "commit": "2f2434c8c2b20c85d652441cdb547c304e8459f8",
      "tree": "4ef181ee698bbbddf82df2247ea545a24e98f55f",
      "parents": [
        "70d9a1bd11252334699373e6f553f27968479661",
        "9dd1a2e1199ccb1b834638827f39915b95b86aa2"
      ],
      "author": {
        "name": "Tim Zhou",
        "email": "timzhou@google.com",
        "time": "Wed Dec 13 20:51:13 2023 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Dec 13 20:51:13 2023 +0000"
      },
      "message": "Merge \"Reapply \"Soy: bump version and use new \"??\" operator\"\""
    },
    {
      "commit": "9dd1a2e1199ccb1b834638827f39915b95b86aa2",
      "tree": "93467d8dc9a17d8a2846280347519967c426893d",
      "parents": [
        "1946930bc2f5837371c121ff458cbc5263d9291c"
      ],
      "author": {
        "name": "Tim Zhou",
        "email": "timzhou@google.com",
        "time": "Thu Nov 30 21:40:44 2023 +0000"
      },
      "committer": {
        "name": "Tim Zhou",
        "email": "timzhou@google.com",
        "time": "Wed Dec 13 20:47:18 2023 +0000"
      },
      "message": "Reapply \"Soy: bump version and use new \"??\" operator\"\n\nThis reverts commit 1946930bc2f5837371c121ff458cbc5263d9291c.\n\nChange-Id: I92b5e330f1dbfa9fd07f90eab9c6f82bdd38260b\n"
    },
    {
      "commit": "70d9a1bd11252334699373e6f553f27968479661",
      "tree": "9d4e12d6936713c17fac97eaea74e070ed779e85",
      "parents": [
        "9bdd8cbb33b2fd8f38eb061fcbf558e5c9d26b8a"
      ],
      "author": {
        "name": "Nicholas Yu",
        "email": "nicholasyu@google.com",
        "time": "Sat Dec 09 16:34:03 2023 -0800"
      },
      "committer": {
        "name": "Josh Brown",
        "email": "sjoshbrown@google.com",
        "time": "Tue Dec 12 14:53:17 2023 +0000"
      },
      "message": "Migrate usages of `and`/`or` to `\u0026\u0026`/`||`.\n\nhttps://github.com/google/closure-templates/blob/master/documentation/reference/expressions.md#deprecated-logical-operators-and-or-logical-operators-deprecated\n\nPiperOrigin-RevId: 589476767\nChange-Id: Iaed0a5096c9c0533f10adb8518eea2a11caf821a\n"
    },
    {
      "commit": "9bdd8cbb33b2fd8f38eb061fcbf558e5c9d26b8a",
      "tree": "6b5eb77ca4137546fd53351177e2cca8af7b4305",
      "parents": [
        "b49a952498e2eeb43937fa6eb2ddaba01c2f839f",
        "1946930bc2f5837371c121ff458cbc5263d9291c"
      ],
      "author": {
        "name": "Tim Zhou",
        "email": "timzhou@google.com",
        "time": "Thu Nov 30 18:39:31 2023 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Nov 30 18:39:31 2023 +0000"
      },
      "message": "Merge \"Revert \"Soy: bump version and use new \"??\" operator\"\""
    },
    {
      "commit": "1946930bc2f5837371c121ff458cbc5263d9291c",
      "tree": "2d9d990dafc161d4b67b3ca9f943588abd1d53ba",
      "parents": [
        "3cc3548f2c37378658c5cad509c7d956c5292b11"
      ],
      "author": {
        "name": "Tim Zhou",
        "email": "timzhou@google.com",
        "time": "Thu Nov 30 18:29:19 2023 +0000"
      },
      "committer": {
        "name": "Tim Zhou",
        "email": "timzhou@google.com",
        "time": "Thu Nov 30 18:31:30 2023 +0000"
      },
      "message": "Revert \"Soy: bump version and use new \"??\" operator\"\n\nThis reverts commit 3cc3548f2c37378658c5cad509c7d956c5292b11.\n\nChange-Id: Ib53e78b308b3de774e3add229488ea7429b6adf9\n"
    },
    {
      "commit": "b49a952498e2eeb43937fa6eb2ddaba01c2f839f",
      "tree": "1e08aeac480a184bba68d2c3a2e0d82bd67fea74",
      "parents": [
        "3cc3548f2c37378658c5cad509c7d956c5292b11"
      ],
      "author": {
        "name": "Ivan Frade",
        "email": "ifrade@google.com",
        "time": "Wed Nov 15 13:02:48 2023 -0800"
      },
      "committer": {
        "name": "Ivan Frade",
        "email": "ifrade@google.com",
        "time": "Wed Nov 15 13:02:48 2023 -0800"
      },
      "message": "Common.soy: make explictely nullable the css parameter\n\nTo help with later changes in Soy, we are marking optional parameters\nexplicitely as nullable.\n\nChange-Id: I94703c6fd28457a997a877fd0b88157e445f5095\n"
    },
    {
      "commit": "3cc3548f2c37378658c5cad509c7d956c5292b11",
      "tree": "9bbb182c46553e13a52d04abeaad6610cc526671",
      "parents": [
        "bbbfc042696d62439c7860038026c66d9494a511"
      ],
      "author": {
        "name": "Tim Zhou",
        "email": "timzhou@google.com",
        "time": "Mon Oct 23 23:22:51 2023 +0000"
      },
      "committer": {
        "name": "Tim Zhou",
        "email": "timzhou@google.com",
        "time": "Tue Oct 24 21:37:39 2023 +0000"
      },
      "message": "Soy: bump version and use new \"??\" operator\n\nThis is a part of a LSC by the Soy team to converge Soy with TypeScript syntax.\n\nIn order to fix this, we will update the Soy version to include the new\n\"??\" syntax and update any pre-existing usage from \"?:\" to \"??\". We also\nhave to update deltemplate to modifiable templates.\n\nChange-Id: I5dff1ea5b2d9025153034812d6ec0f0282e1643e\n"
    },
    {
      "commit": "bbbfc042696d62439c7860038026c66d9494a511",
      "tree": "2d9d990dafc161d4b67b3ca9f943588abd1d53ba",
      "parents": [
        "d62af25361f96ba2979681a109a74fc7beffa9ad",
        "851650604136e56556de23612dcb696cdbe93383"
      ],
      "author": {
        "name": "Réda Housni Alaoui",
        "email": "alaoui.rda@gmail.com",
        "time": "Fri Oct 20 15:02:40 2023 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Oct 20 15:02:40 2023 +0000"
      },
      "message": "Merge \"Improve tools/run_dev.sh to allow custom flags\""
    },
    {
      "commit": "d62af25361f96ba2979681a109a74fc7beffa9ad",
      "tree": "4997322f9d72040ead095627c4c0170d670e31f3",
      "parents": [
        "484ec1a0b4d64c13004452da37d02663640a3a8d"
      ],
      "author": {
        "name": "Matthias Sohn",
        "email": "matthias.sohn@sap.com",
        "time": "Sun Oct 01 00:13:01 2023 +0200"
      },
      "committer": {
        "name": "Matthias Sohn",
        "email": "matthias.sohn@sap.com",
        "time": "Wed Oct 11 14:16:16 2023 +0200"
      },
      "message": "Enable more errorprone patterns\n\nChange-Id: I3424a5bdc7209b8e4dd2c3bfa3d4e4ee7fa0e8bc\n"
    },
    {
      "commit": "484ec1a0b4d64c13004452da37d02663640a3a8d",
      "tree": "4a69fad936a1f08353022493c3c7669d06822bea",
      "parents": [
        "12102305b1ae8d42cd6f0556d94a8e30afe95165"
      ],
      "author": {
        "name": "Matthias Sohn",
        "email": "matthias.sohn@sap.com",
        "time": "Sun Oct 01 00:12:44 2023 +0200"
      },
      "committer": {
        "name": "Matthias Sohn",
        "email": "matthias.sohn@sap.com",
        "time": "Wed Oct 11 14:16:16 2023 +0200"
      },
      "message": "Update bazel to 6.3.2\n\nDemote the errorprone pattern PreferredInterfaceType aka\nMutableMethodReturnType to ensure the build still succeeds.\n\nChange-Id: I6a6e44362e6ff943a26553890a2c84dbfe65128b\n"
    },
    {
      "commit": "12102305b1ae8d42cd6f0556d94a8e30afe95165",
      "tree": "486dd0e19a4518b8dae131800432ab56266f94ce",
      "parents": [
        "cf746f003cefffa77c5fa9420a55fbe8c7d3baa1"
      ],
      "author": {
        "name": "Matthias Sohn",
        "email": "matthias.sohn@sap.com",
        "time": "Sat Sep 30 23:23:56 2023 +0200"
      },
      "committer": {
        "name": "Matthias Sohn",
        "email": "matthias.sohn@sap.com",
        "time": "Wed Oct 11 14:15:39 2023 +0200"
      },
      "message": "[errorprone] Fix JavaUtilDate\n\nUpdate to use PersonIdent#getWhenAsInstant to fix this error raised by\nerrorprone. Commit timestamps are stored with 1 second resolution.\n\nSee https://git-scm.com/docs/git-commit#Documentation/git-commit.txt-Gitinternalformat\n\nChange-Id: Id97e1915fca64799d365184d0eec5afe98ba8637\n"
    },
    {
      "commit": "cf746f003cefffa77c5fa9420a55fbe8c7d3baa1",
      "tree": "ff98023c61eb2a9c10d7495b1d8618edc5cbaf02",
      "parents": [
        "d8e7ffb12c21781e11e1b58741a36f660254bde7"
      ],
      "author": {
        "name": "Matthias Sohn",
        "email": "matthias.sohn@sap.com",
        "time": "Wed Oct 11 09:39:57 2023 +0200"
      },
      "committer": {
        "name": "Matthias Sohn",
        "email": "matthias.sohn@sap.com",
        "time": "Wed Oct 11 09:39:57 2023 +0200"
      },
      "message": "Update JGit to dc27dbd2f\n\n$ git log --oneline --no-merges 42917767f..dc27dbd2f\n5705e2af1 [errorprone] Fix InconsistentCapitalization\n5138b97b6 TestRepository: Add getInstant method\n790fa7e81 Update orbit to orbit-aggregation/2023-12\ne0acf2579 Prepare 6.8.0-SNAPSHOT builds\ne5a79343c JGit v6.8.0.202310031045-m1\n\nChange-Id: Ib9501a1538cdae2161a56094309cb7adee2f7f12\n"
    },
    {
      "commit": "d8e7ffb12c21781e11e1b58741a36f660254bde7",
      "tree": "26c4974a78bd871112e56c379c7594e24d32d3cb",
      "parents": [
        "e2e3c6a5361d5617ea9f05552db089986f80b204"
      ],
      "author": {
        "name": "Matthias Sohn",
        "email": "matthias.sohn@sap.com",
        "time": "Sun Oct 01 01:15:56 2023 +0200"
      },
      "committer": {
        "name": "Matthias Sohn",
        "email": "matthias.sohn@sap.com",
        "time": "Fri Oct 06 15:49:57 2023 +0000"
      },
      "message": "[errorprone] Fix see InvalidInlineTag\n\nSee https://errorprone.info/bugpattern/InvalidInlineTag\n\nChange-Id: If7e5ecc1d1ea7188611dcf8f8ad3a9062fb58450\n"
    },
    {
      "commit": "e2e3c6a5361d5617ea9f05552db089986f80b204",
      "tree": "4825e274e52a10eeee9cf660389fa2de490da9fc",
      "parents": [
        "ba9eb87778d3eda987c0aebe74cceb9b2beaa304"
      ],
      "author": {
        "name": "Matthias Sohn",
        "email": "matthias.sohn@sap.com",
        "time": "Sun Oct 01 00:11:52 2023 +0200"
      },
      "committer": {
        "name": "Matthias Sohn",
        "email": "matthias.sohn@sap.com",
        "time": "Fri Oct 06 15:49:41 2023 +0000"
      },
      "message": "[errorprone] Fix BadImport\n\nSee https://errorprone.info/bugpattern/BadImport\n\nChange-Id: If282cdc63f74a5122df70a3ee5e7e578a5c0bc83\n"
    },
    {
      "commit": "ba9eb87778d3eda987c0aebe74cceb9b2beaa304",
      "tree": "b969a83edad526a229bde4c886a42044213bf84d",
      "parents": [
        "0f85ecb9ea9eacd38082e465b6ffa0bd5f85cea7"
      ],
      "author": {
        "name": "Matthias Sohn",
        "email": "matthias.sohn@sap.com",
        "time": "Sun Oct 01 00:02:27 2023 +0200"
      },
      "committer": {
        "name": "Matthias Sohn",
        "email": "matthias.sohn@sap.com",
        "time": "Fri Oct 06 15:48:48 2023 +0000"
      },
      "message": "[errorprone] Fix EscapedEntity\n\nSee https://errorprone.info/bugpattern/EscapedEntity\n\nChange-Id: If89e16046b9d45ed4f1eb0c9b540a1f51560b149\n"
    },
    {
      "commit": "851650604136e56556de23612dcb696cdbe93383",
      "tree": "141ecf319ef5af441320d3adcc5fae8b6821111a",
      "parents": [
        "b911eb36af394d49c4bfaf6de522ff6544d650c3"
      ],
      "author": {
        "name": "Réda Housni Alaoui",
        "email": "reda-alaoui@hey.com",
        "time": "Tue Sep 26 16:04:43 2023 +0200"
      },
      "committer": {
        "name": "Réda Housni Alaoui",
        "email": "reda-alaoui@hey.com",
        "time": "Tue Oct 03 11:13:53 2023 +0200"
      },
      "message": "Improve tools/run_dev.sh to allow custom flags\n\nIt is currently impossible or very hard to run tools/run_dev.sh\nwith a jvm debug port open.\n\nWith this change, one can simply run \u0027tools/run_dev.sh --debug\u0027 to open\n the default jvm debug port.\n\nChange-Id: Ie3702affb3a7ee604cfa2dca6836135e0e8663b7\n"
    }
  ],
  "next": "0f85ecb9ea9eacd38082e465b6ffa0bd5f85cea7"
}
