)]}'
{
  "log": [
    {
      "commit": "1bf3426e084f8b4ed82a33bd2797e0ed98949c0a",
      "tree": "84e66f2b35f6739a4507d11c599057a80a4fcbe9",
      "parents": [
        "b852d0c6d6c6ccc2d60aecdaa9a38dec9803b661"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Thu Jun 11 09:35:00 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Thu Jun 11 09:35:00 2026 -0400"
      },
      "message": "Bump org.apache.commons:commons-parent from 101 to 102.\n"
    },
    {
      "commit": "b852d0c6d6c6ccc2d60aecdaa9a38dec9803b661",
      "tree": "411b21f3493b1e7c14ab91e0c563e26829e34abe",
      "parents": [
        "86e664dbde8a4927adde3b852985b878a58d43e7"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sun Jun 07 10:12:46 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sun Jun 07 10:12:46 2026 -0400"
      },
      "message": "Bump GH CI actions/dependency-review-action from 4.9.0 to 5.0.0\n"
    },
    {
      "commit": "86e664dbde8a4927adde3b852985b878a58d43e7",
      "tree": "40d4e444cbdd57b0738c74f0ea1544a56fc5dc5c",
      "parents": [
        "0406d1cee892b2d49c5861630ff77cefddfb4933"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sun Jun 07 10:08:52 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sun Jun 07 10:08:52 2026 -0400"
      },
      "message": "Bump GH CI actions/checkout from 6.0.2 to 6.0.3\n"
    },
    {
      "commit": "0406d1cee892b2d49c5861630ff77cefddfb4933",
      "tree": "251cb9009816ff5b62f75a7146f4cbcbf095fb3c",
      "parents": [
        "cda9710de8f1ac6f1a7d2d25d13b7226637bf836"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Fri Jun 05 11:40:19 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Fri Jun 05 11:40:19 2026 -0400"
      },
      "message": "Bump org.apache.commons:commons-parent from 100 to 101"
    },
    {
      "commit": "cda9710de8f1ac6f1a7d2d25d13b7226637bf836",
      "tree": "b1217e9898cc06a2b0a2fde84533792a7c1f141d",
      "parents": [
        "fcf4d82a6f08de178baf45acd5ad9265bf6b9c4b"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Fri Jun 05 07:27:55 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Fri Jun 05 07:27:55 2026 -0400"
      },
      "message": "Bump github/codeql-action from 4.36.0 to 4.36.2\n"
    },
    {
      "commit": "fcf4d82a6f08de178baf45acd5ad9265bf6b9c4b",
      "tree": "e5acad5f544b2b41abc7a1b6e9144887cc6c1ffc",
      "parents": [
        "19b60fad7edeeff3c096b0cca0653d1f0718d910"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Wed May 27 16:51:38 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Wed May 27 16:51:38 2026 -0400"
      },
      "message": "Bump github/codeql-action from 4.35.5 to 4.36.0\n"
    },
    {
      "commit": "19b60fad7edeeff3c096b0cca0653d1f0718d910",
      "tree": "b7eda3d5fe7146b74ef61b792ef546029528949f",
      "parents": [
        "9676e23787efd7b05548872a2a6731a66a861a32"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Thu May 21 20:49:45 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Thu May 21 20:49:45 2026 -0400"
      },
      "message": "Reuse constant\n"
    },
    {
      "commit": "9676e23787efd7b05548872a2a6731a66a861a32",
      "tree": "20a184b8df760e175b5d7fd2c8deb7a2100df367",
      "parents": [
        "6b86a438b72cfa194af965d0e290e383106b3cee"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Thu May 21 15:39:07 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Thu May 21 15:39:07 2026 -0400"
      },
      "message": "Bump org.apache.commons:commons-parent from 99 to 100.\n"
    },
    {
      "commit": "6b86a438b72cfa194af965d0e290e383106b3cee",
      "tree": "8a304b5a81d880d6e520a374a0f9b44ad87ea48c",
      "parents": [
        "f2ac150daabcd8aa334b94c3d58c3c1ee695e8e0"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Thu May 21 07:28:49 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Thu May 21 07:28:49 2026 -0400"
      },
      "message": "Digest ALL reuses System.in, so only the first algorithm sees the real\ninput (#431).\n"
    },
    {
      "commit": "f2ac150daabcd8aa334b94c3d58c3c1ee695e8e0",
      "tree": "6448005551b26cffd22373159cec805a2fc9364e",
      "parents": [
        "d3179620d7d055bee965b1b2a048bcc846b1981b"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@users.noreply.github.com",
        "time": "Thu May 21 07:27:10 2026 -0400"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu May 21 07:27:10 2026 -0400"
      },
      "message": "[CODEC-337] Digest ALL reuses System.in, so only the first algorithm sees the real input (#431)"
    },
    {
      "commit": "d3179620d7d055bee965b1b2a048bcc846b1981b",
      "tree": "9e4e0f35037468e366f5cc22e739c46b5f4aab2d",
      "parents": [
        "77fcf89711a0e20393105a1247c41968f6eb58d4"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Wed May 20 06:43:34 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Wed May 20 06:43:34 2026 -0400"
      },
      "message": "Bump github/codeql-action from 4.35.4 to 4.35.5\n"
    },
    {
      "commit": "77fcf89711a0e20393105a1247c41968f6eb58d4",
      "tree": "4b283f0cb7a7465024133be466bf3ba9b66b7d30",
      "parents": [
        "acb8802a22051651a880de8fbdb1f68b28c7ef7c"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Tue May 12 18:49:09 2026 +0000"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Tue May 12 18:49:09 2026 +0000"
      },
      "message": "Bump github/codeql-action from 4.35.3 to 4.35.4\n"
    },
    {
      "commit": "acb8802a22051651a880de8fbdb1f68b28c7ef7c",
      "tree": "1c2597a0fa27d2b2b69da739bfe3a504cb1f41c8",
      "parents": [
        "434789abd38decf069b2787696538580cfaf3359"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Tue May 05 11:23:09 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Tue May 05 11:23:09 2026 -0400"
      },
      "message": "Bump github/codeql-action from 4.35.2 to 4.35.3\n"
    },
    {
      "commit": "434789abd38decf069b2787696538580cfaf3359",
      "tree": "6c38d00e45c28c7d9c419955320a36fae181eb3e",
      "parents": [
        "6ff3cc48b02d1725495fa7f1c19427e168c1536e"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Mon Apr 27 07:01:05 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Mon Apr 27 07:01:05 2026 -0400"
      },
      "message": "Javadoc: No need for FQCNs.\n"
    },
    {
      "commit": "6ff3cc48b02d1725495fa7f1c19427e168c1536e",
      "tree": "35360b14311802da8e0480c4bc6649d2e099b0ab",
      "parents": [
        "c8e1f069137de1caebcd21dab17080318f99986b"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sun Apr 26 07:31:54 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sun Apr 26 07:31:54 2026 -0400"
      },
      "message": "Bump org.apache.commons:commons-parent from 98 to 99\n"
    },
    {
      "commit": "c8e1f069137de1caebcd21dab17080318f99986b",
      "tree": "567c43bd5ff725d76504b1f80f75301446db3726",
      "parents": [
        "6a41a907c7e0050e5de409c63c4df9edd331dfe1"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sat Apr 25 23:23:04 2026 +0000"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sat Apr 25 23:23:04 2026 +0000"
      },
      "message": "Updates for the next release\n"
    },
    {
      "commit": "6a41a907c7e0050e5de409c63c4df9edd331dfe1",
      "tree": "bb217ac05c54871117db89e95f7550b6260c0906",
      "parents": [
        "ed4396b4cbc85cea60cbd1cec6bc203a940251d2",
        "250053d31de82d4ccf9bf21ad697352e7d816363"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sat Apr 25 00:31:10 2026 +0000"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sat Apr 25 00:31:10 2026 +0000"
      },
      "message": "Merge branch \u0027release\u0027\n"
    },
    {
      "commit": "250053d31de82d4ccf9bf21ad697352e7d816363",
      "tree": "be8fafd17cd495e07b596e496969cfe74bb7849a",
      "parents": [
        "81a6295f071df5819893422a397d94bc396f2edd"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sat Apr 25 00:31:10 2026 +0000"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sat Apr 25 00:31:10 2026 +0000"
      },
      "message": "Bump to next development version\n"
    },
    {
      "commit": "ed4396b4cbc85cea60cbd1cec6bc203a940251d2",
      "tree": "0b36ba97fca4c2cb7d4e4676af7cfcd8ba8c32b8",
      "parents": [
        "a18cce11d12705213c0da7910eb476da1de22af9"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Thu Apr 23 06:43:02 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Thu Apr 23 06:43:02 2026 -0400"
      },
      "message": "Bump commons-io:commons-io from 2.21.0 to 2.22.0.\n"
    },
    {
      "commit": "a18cce11d12705213c0da7910eb476da1de22af9",
      "tree": "18a241bb259aaa3fc958e718456dc07a7cca1810",
      "parents": [
        "73104b011a9758896904831f9b1bd29aad077f11"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Thu Apr 23 06:30:23 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Thu Apr 23 06:30:23 2026 -0400"
      },
      "message": "FIx tag in POM."
    },
    {
      "commit": "81a6295f071df5819893422a397d94bc396f2edd",
      "tree": "3bf2ad96b7c373e7034ce4006631ce173e8672f8",
      "parents": [
        "73104b011a9758896904831f9b1bd29aad077f11"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sun Apr 19 11:12:11 2026 +0000"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sun Apr 19 11:12:11 2026 +0000"
      },
      "message": "Prepare for the release candidate 1.22.0 RC1\n"
    },
    {
      "commit": "73104b011a9758896904831f9b1bd29aad077f11",
      "tree": "9e18f13339dfb82190476286f73ee7f8afffaa0d",
      "parents": [
        "8e36214fa2760d37e4e9c83336ed5bb324c23482"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sun Apr 19 11:10:11 2026 +0000"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sun Apr 19 11:10:11 2026 +0000"
      },
      "message": "Prepare for the next release candidate\n"
    },
    {
      "commit": "8e36214fa2760d37e4e9c83336ed5bb324c23482",
      "tree": "94dec3c7fad33f8f35df99d6eeb05291cecb48ef",
      "parents": [
        "9bd67e787d88705baa26e85f3a9609dec015ba5b"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sun Apr 19 07:02:56 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sun Apr 19 07:02:56 2026 -0400"
      },
      "message": "In-line single use test local variables\n"
    },
    {
      "commit": "9bd67e787d88705baa26e85f3a9609dec015ba5b",
      "tree": "a25565082315d03a65190d46290d85dc8f907444",
      "parents": [
        "25e52b06a3c24dc06216e7d29321a2f01c60ec6f"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sun Apr 19 06:59:41 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sun Apr 19 06:59:41 2026 -0400"
      },
      "message": "Use vararg syntax\n"
    },
    {
      "commit": "25e52b06a3c24dc06216e7d29321a2f01c60ec6f",
      "tree": "cc77c39772b94901a97bd7503c908645bc19b193",
      "parents": [
        "e2ebaca8b30d1d04d0eb6a4e811a6d26631f4d31"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sun Apr 19 06:55:37 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sun Apr 19 06:55:37 2026 -0400"
      },
      "message": "Use vararg syntax\n"
    },
    {
      "commit": "e2ebaca8b30d1d04d0eb6a4e811a6d26631f4d31",
      "tree": "816198b1dfee3517923b742c1dd05b993a60e103",
      "parents": [
        "33998a05a8adc84ca944bad2e5c7215309d1477b"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Thu Apr 16 07:10:11 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Thu Apr 16 07:10:11 2026 -0400"
      },
      "message": "Bump github/codeql-action from 4.35.1 to 4.35.2\n"
    },
    {
      "commit": "33998a05a8adc84ca944bad2e5c7215309d1477b",
      "tree": "a88bea8141481dfc8fd3d6187e16aa066dcb69ea",
      "parents": [
        "50c6583280cb3ed67407dcaeb31df4f8fa8ede20"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Tue Apr 14 07:54:43 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Tue Apr 14 07:54:43 2026 -0400"
      },
      "message": "Bump actions/upload-artifact from 7.0.0 to 7.0.1\n"
    },
    {
      "commit": "50c6583280cb3ed67407dcaeb31df4f8fa8ede20",
      "tree": "67c85dd5f000662f4c9b3a4d0c3a396dd29c4c7b",
      "parents": [
        "b2be3a82b2d0902e89718a56c6afb5850d020668"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Tue Apr 14 07:48:35 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Tue Apr 14 07:48:35 2026 -0400"
      },
      "message": "Bump actions/cache from 5.0.4 to 5.0.5\n"
    },
    {
      "commit": "b2be3a82b2d0902e89718a56c6afb5850d020668",
      "tree": "210dc4e85ba117181175def4c56084157225a418",
      "parents": [
        "20f09bfcfdce88760ec9be095b848e85d9084acf"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Mon Apr 13 07:35:42 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Mon Apr 13 07:35:42 2026 -0400"
      },
      "message": "Add @Override\n"
    },
    {
      "commit": "20f09bfcfdce88760ec9be095b848e85d9084acf",
      "tree": "17162627c7117ed60c54f4fd80246184d5baa851",
      "parents": [
        "fbe6354c6acd5de8532a49e26b9d08706c757719"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sun Apr 12 18:27:16 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sun Apr 12 18:27:16 2026 -0400"
      },
      "message": "Use final.\n\nUse compact array notation.\n"
    },
    {
      "commit": "fbe6354c6acd5de8532a49e26b9d08706c757719",
      "tree": "9493ca8b9908c547825fbcf029044f2f1b5da439",
      "parents": [
        "9d2fd407b6caa0a58af6bdf3c62f4a1946730ba6"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sun Apr 12 14:48:02 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sun Apr 12 14:48:02 2026 -0400"
      },
      "message": "Javadoc\n"
    },
    {
      "commit": "9d2fd407b6caa0a58af6bdf3c62f4a1946730ba6",
      "tree": "2369554bd3592aee0310f105dfffb69bc109e041",
      "parents": [
        "054a4dd0fae429a655e34997bc38d8dddfcada15"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sun Apr 12 14:47:51 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sun Apr 12 14:47:51 2026 -0400"
      },
      "message": "Javadoc that works on Java 8, 11, 17, 21, and 25.\n"
    },
    {
      "commit": "054a4dd0fae429a655e34997bc38d8dddfcada15",
      "tree": "a133582c1b9ef55af5d2e2de2e4214e26e935e6d",
      "parents": [
        "decdb7d1ac200d4c3d80b7f1042133702cf9cfcb"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sun Apr 12 13:40:50 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sun Apr 12 13:40:50 2026 -0400"
      },
      "message": "Fix Javadoc text\n"
    },
    {
      "commit": "decdb7d1ac200d4c3d80b7f1042133702cf9cfcb",
      "tree": "da64f1c0fc96e6f57af7a74010780dcc8ee08d2b",
      "parents": [
        "b495206e74025ec07c23eea9e8ac9e27e13eac1e"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sun Apr 12 13:39:19 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sun Apr 12 13:39:19 2026 -0400"
      },
      "message": "TreeIdBuilder implements Supplier\u003cbyte[]\u003e\n"
    },
    {
      "commit": "b495206e74025ec07c23eea9e8ac9e27e13eac1e",
      "tree": "9b8a76499c6a781f34f194e7e959407d6203128c",
      "parents": [
        "9e8cb6acd1cd7f6aa3362be8e088ebc5c130faff"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sun Apr 12 13:35:50 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sun Apr 12 13:35:50 2026 -0400"
      },
      "message": "Remove conversion overhead when loading the FileMode enum.\n\nFix Javadoc warning\n"
    },
    {
      "commit": "9e8cb6acd1cd7f6aa3362be8e088ebc5c130faff",
      "tree": "6ecd5d08fd98e25789dc97760746290ee20d61e9",
      "parents": [
        "b075fd146d02df5259f7f88bc5c6a02db694722f"
      ],
      "author": {
        "name": "Piotr P. Karwasz",
        "email": "pkarwasz-github@apache.org",
        "time": "Sun Apr 12 19:00:09 2026 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Apr 12 13:00:09 2026 -0400"
      },
      "message": "Small fixes to `GitIdentifiers` (#429)\n\n* Remove `FileMode.getMode()`\n\nThe octal value associated to `FileMode` is not very useful to users, since it is only used internally, when generating the tree id. Therefore we can probably remove the getter for now.\n\n* Add filesystem test\n\n* Sort methods\n\n* Fix formatting\n\n* Enable test on Windows\n\nThe test will check anyway if symbolic links are supported.\n\n* Remove unused imports"
    },
    {
      "commit": "b075fd146d02df5259f7f88bc5c6a02db694722f",
      "tree": "3546ecfd21e53b50d472d7a0c35caf79ffce7e80",
      "parents": [
        "e83256653eaa5f1131ef9725de624ab988053fc4"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sun Apr 12 11:33:10 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sun Apr 12 11:33:10 2026 -0400"
      },
      "message": "Javadoc\n"
    },
    {
      "commit": "e83256653eaa5f1131ef9725de624ab988053fc4",
      "tree": "66fcfb57e195729867ebb64c3431203617b6f692",
      "parents": [
        "c29e2e81110d12efcb9fca446f8e1c5ad6b0abdd"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sun Apr 12 10:13:24 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sun Apr 12 10:13:24 2026 -0400"
      },
      "message": "Internal refactoring\n"
    },
    {
      "commit": "c29e2e81110d12efcb9fca446f8e1c5ad6b0abdd",
      "tree": "50527ee3f962ff6eeb18de3c0e9ffcd780667c8a",
      "parents": [
        "a0db7e239dcd9be5d6f9e9c6b97e3cffbbd02df2"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sun Apr 12 09:58:06 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sun Apr 12 09:58:06 2026 -0400"
      },
      "message": "Make internal method fluent\n"
    },
    {
      "commit": "a0db7e239dcd9be5d6f9e9c6b97e3cffbbd02df2",
      "tree": "257d4250a178b09826f7bb3fb8588e9e00516171",
      "parents": [
        "d757d5166928a8e490ceb8a6a91d269e126a594c"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sun Apr 12 09:56:50 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sun Apr 12 09:56:50 2026 -0400"
      },
      "message": "Better internal name\n"
    },
    {
      "commit": "d757d5166928a8e490ceb8a6a91d269e126a594c",
      "tree": "839ad1d45f11c13eb54967c999b4ee8df28f2657",
      "parents": [
        "feeec7591704b24709e8028c434c7b57a6e2d9d7"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sun Apr 12 09:56:05 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sun Apr 12 09:56:05 2026 -0400"
      },
      "message": "GitIdentifiers.TreeIdBuilder.build() never throws IOException\n"
    },
    {
      "commit": "feeec7591704b24709e8028c434c7b57a6e2d9d7",
      "tree": "7ad0b7b2b3c96d2c99678220145c571e6e5cf72e",
      "parents": [
        "1ff5140ce427f6cfa53059d292ad91f08cfe8d2c"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sun Apr 12 09:36:17 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sun Apr 12 09:36:17 2026 -0400"
      },
      "message": "Add GitIdentifiers.FileMode.GIT_LINK\n"
    },
    {
      "commit": "1ff5140ce427f6cfa53059d292ad91f08cfe8d2c",
      "tree": "e135c1d7c851e941cc54d88066b451dbf557c181",
      "parents": [
        "1faf4e6204dad120f894d057098ef0db51db5305"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sun Apr 12 09:30:36 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sun Apr 12 09:30:36 2026 -0400"
      },
      "message": "Internal refactoring\n"
    },
    {
      "commit": "1faf4e6204dad120f894d057098ef0db51db5305",
      "tree": "19345ec1fc5e1976729a9deae1f958646e96c100",
      "parents": [
        "126acfaff4fd05621a1ec4d361ec25c5012afd40"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sun Apr 12 09:13:54 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sun Apr 12 09:13:54 2026 -0400"
      },
      "message": "Javadoc\n"
    },
    {
      "commit": "126acfaff4fd05621a1ec4d361ec25c5012afd40",
      "tree": "8512cf084f65bfb83ef119936215f8505405a608",
      "parents": [
        "0e98b77748630e809cd7e659616df24094278912"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sun Apr 12 08:43:28 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sun Apr 12 08:43:28 2026 -0400"
      },
      "message": "Javadoc\n"
    },
    {
      "commit": "0e98b77748630e809cd7e659616df24094278912",
      "tree": "e198c6ac8cbd4f0ef858fcb8aa4963523415c7bc",
      "parents": [
        "c18180202fc93146797a826d3f0b2a945ee2f9cc"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sun Apr 12 08:27:27 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sun Apr 12 08:27:27 2026 -0400"
      },
      "message": "Fix Javadoc typo\n"
    },
    {
      "commit": "c18180202fc93146797a826d3f0b2a945ee2f9cc",
      "tree": "b42f49d25b14ee5ce2fbf7cd81111eee0c181114",
      "parents": [
        "a77db1ba905a23aa7ec743a66f661c5c11d8d65d"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sun Apr 12 07:48:59 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sun Apr 12 07:48:59 2026 -0400"
      },
      "message": "Javadoc\n"
    },
    {
      "commit": "a77db1ba905a23aa7ec743a66f661c5c11d8d65d",
      "tree": "08633e3c34b05be72c2da77c3553f717a1370b5d",
      "parents": [
        "732eb9173e9be8a8244f62bf443ec208946ed3f2"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sun Apr 12 07:47:24 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sun Apr 12 07:47:24 2026 -0400"
      },
      "message": "Javadoc\n"
    },
    {
      "commit": "732eb9173e9be8a8244f62bf443ec208946ed3f2",
      "tree": "a730135c6d4f1401348bd61e3c0b2233c5cf9928",
      "parents": [
        "631d183f630efaabfc909a228278904ade214bcf"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sun Apr 12 07:44:08 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sun Apr 12 07:44:08 2026 -0400"
      },
      "message": "Sort members\n"
    },
    {
      "commit": "631d183f630efaabfc909a228278904ade214bcf",
      "tree": "cb20fd10071d9bc0f57d27ea9bd7eb16e8d70b70",
      "parents": [
        "74bdc007b300dc8b06cb579517096d497540448d"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sun Apr 12 07:41:52 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sun Apr 12 07:41:52 2026 -0400"
      },
      "message": "Rename test method\n"
    },
    {
      "commit": "74bdc007b300dc8b06cb579517096d497540448d",
      "tree": "d836a04892cf951dd43241ab9dea9fdf2bef3a77",
      "parents": [
        "27b228d4c0c34e0108bb07c9b169d07023678f4a"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sun Apr 12 07:41:23 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sun Apr 12 07:41:23 2026 -0400"
      },
      "message": "Fix spelling (codespell)\n"
    },
    {
      "commit": "27b228d4c0c34e0108bb07c9b169d07023678f4a",
      "tree": "1959929c1fbb3bcdeaecd5547e4e9cf20121b046",
      "parents": [
        "387120c901f4a75c3112dfdf8877dcdec7ae685d"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sun Apr 12 07:09:33 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sun Apr 12 07:09:33 2026 -0400"
      },
      "message": "Update action description for Add GitIdentifiers helper #428\n"
    },
    {
      "commit": "387120c901f4a75c3112dfdf8877dcdec7ae685d",
      "tree": "3599a0d4c3c8c20af5a860985405cbe19bf385b9",
      "parents": [
        "f5a2cecd2d0484953d41fa4bb8cab849be3a7cd5"
      ],
      "author": {
        "name": "Piotr P. Karwasz",
        "email": "pkarwasz-github@apache.org",
        "time": "Sun Apr 12 13:01:13 2026 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Apr 12 07:01:13 2026 -0400"
      },
      "message": "Add `GitIdentifiers` helper (#428)\n\n* feat: Refactor Git-related methods in `GitIdentifiers`\n\nThis change moves `gitBlob` and `gitTree` from `DigestUtils` into a separate utility class, to prepare for an enhancement of the provided API.\n\nThe git tree identifier can be computed for many objects: the most natural is a directory in a filesystem, but we can also compute the identifier on an archive containing this directory. Additional usages will require expanding the API, beyond what can be reasonably contained in `DigestUtils`.\n\n* fix: remove `OpenOption` parameters\n\nThe `OpenOption` parameters are not very useful, since files are usually opened read-only.\n\n* fix: remove useless @since annotations\n\n* fix: make GitDirectoryEntry internal\n\n* feat: add `GitIdBuilder`\n\nThis change adds a `GitIdentifiers.TreeIdBuilder` class to allow the computation of a SWHID identifier from an archive.\n\n* fix: SpotBug error\n\n* fix: try fix Java 8 javadoc error\n\n* fix: extract `getGitPrefix` again\n\n* fix: improve encapsulation\n\n* fix: Javadoc on Java 8\n\n* fix: remove `blobId(MessageDigest, InputStream)`\n\n* fix: add `addSymbolicLink` helper\n\n* fix: simplify `populateFromPath` and `blobId`\n\n* fix: ignore `.` path segment"
    },
    {
      "commit": "f5a2cecd2d0484953d41fa4bb8cab849be3a7cd5",
      "tree": "9278fd12e94c89562eee27d5f965d63e41154a58",
      "parents": [
        "850d2bb7e6a4626765c44982645e24828e24abb5"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Tue Apr 07 12:36:46 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Tue Apr 07 12:36:46 2026 -0400"
      },
      "message": "Bump org.apache.commons:commons-parent from 97 to 98\n"
    },
    {
      "commit": "850d2bb7e6a4626765c44982645e24828e24abb5",
      "tree": "40ea72d15d0b4897bd430d866721518b86baafdd",
      "parents": [
        "c44cbb35e8beed6d75495d5ea750a5e0a8c9449c"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sat Apr 04 18:10:55 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sat Apr 04 18:10:55 2026 -0400"
      },
      "message": "Fix Base58 zero buffer bug\n"
    },
    {
      "commit": "c44cbb35e8beed6d75495d5ea750a5e0a8c9449c",
      "tree": "5b390cd1f55a05beb6b749a1d9ae4cce330d9190",
      "parents": [
        "6b8a51f1801505db364453248af71ffb30624f9d"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sat Apr 04 17:54:05 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sat Apr 04 17:54:05 2026 -0400"
      },
      "message": "Comments\n"
    },
    {
      "commit": "6b8a51f1801505db364453248af71ffb30624f9d",
      "tree": "9980d45bee6728ddb28424e877629fbd9df51748",
      "parents": [
        "7d3deb80bcb40278c516e05f63badec9d6d7d0a2"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sat Apr 04 17:51:36 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sat Apr 04 17:51:36 2026 -0400"
      },
      "message": "Javadoc\n"
    },
    {
      "commit": "7d3deb80bcb40278c516e05f63badec9d6d7d0a2",
      "tree": "c1149241020596b07d6813d669f7c043f2de3c1c",
      "parents": [
        "e75f3f94ae6f87070b30e9b6509816635069d644"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sat Apr 04 17:49:56 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sat Apr 04 17:49:56 2026 -0400"
      },
      "message": "Make Base58 stateless\n\nThe original PR code didn\u0027t understand how to use a Context.\n"
    },
    {
      "commit": "e75f3f94ae6f87070b30e9b6509816635069d644",
      "tree": "5ce41f7ef9ab2d4660527b92863b95dab4924364",
      "parents": [
        "55d777236a36e31ae71a2421235c931c551ea7d6"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sat Apr 04 17:38:28 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sat Apr 04 17:38:28 2026 -0400"
      },
      "message": "Better internal name\n"
    },
    {
      "commit": "55d777236a36e31ae71a2421235c931c551ea7d6",
      "tree": "8464491b4069ef4b7c1089372f1e26807257fb93",
      "parents": [
        "d4f988691602710928ab9e30fbf4ca0653c726ee"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sat Apr 04 17:27:18 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sat Apr 04 17:27:18 2026 -0400"
      },
      "message": "Better internal name\n"
    },
    {
      "commit": "d4f988691602710928ab9e30fbf4ca0653c726ee",
      "tree": "d4fffa5f057928901f23be5e902c3a4bf858ca69",
      "parents": [
        "5267ca5806c3919001efa2bacc9466f07abd8f25"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sat Apr 04 08:28:06 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sat Apr 04 08:28:06 2026 -0400"
      },
      "message": "Javadoc\n"
    },
    {
      "commit": "5267ca5806c3919001efa2bacc9466f07abd8f25",
      "tree": "5c1e4daf8aff52f8ba22078b9da77fa0a2dcbe6d",
      "parents": [
        "c60d0ed1242339cd876d33bb5303ff9e21837d98"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sat Apr 04 08:25:42 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sat Apr 04 08:25:42 2026 -0400"
      },
      "message": "Add RFC test vectors\n\n- Add builder method to new class\n- Internal refactorings\n"
    },
    {
      "commit": "c60d0ed1242339cd876d33bb5303ff9e21837d98",
      "tree": "04599e7da610f46207a4770995a12102070a974a",
      "parents": [
        "043c84367a2442cfaf0358b3636913a129ca1987"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sat Apr 04 07:56:37 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sat Apr 04 07:58:07 2026 -0400"
      },
      "message": "Internal refactoring\n"
    },
    {
      "commit": "043c84367a2442cfaf0358b3636913a129ca1987",
      "tree": "24bedc1ff417b06be2cf930282c75d67fcfd1013",
      "parents": [
        "00bfe4a5f46af2b582820b4cde3db45148075092"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sat Apr 04 07:50:18 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sat Apr 04 07:50:18 2026 -0400"
      },
      "message": "Internal refactoring\n"
    },
    {
      "commit": "00bfe4a5f46af2b582820b4cde3db45148075092",
      "tree": "70aeb8f44015043f87b7572f652b3914f813287f",
      "parents": [
        "7e8d688f2d3f77586dbdb685f1c389f71b7716c9"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sat Apr 04 07:45:53 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sat Apr 04 07:45:53 2026 -0400"
      },
      "message": "Internal refactoring\n"
    },
    {
      "commit": "7e8d688f2d3f77586dbdb685f1c389f71b7716c9",
      "tree": "c45c2aa36f5f74cd3fad3f5992e4d0fb60fa6f53",
      "parents": [
        "7491b61bf58b469be093ef4ea4bd9708bcf74cf9"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sat Apr 04 07:44:33 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sat Apr 04 07:44:33 2026 -0400"
      },
      "message": "Javadoc\n"
    },
    {
      "commit": "7491b61bf58b469be093ef4ea4bd9708bcf74cf9",
      "tree": "b48ce7799f983f4d08d290a4a9fc7d8f143599a9",
      "parents": [
        "d01d773bd40b183ca08fa00c906c72420de61ca0"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sat Apr 04 07:43:15 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sat Apr 04 07:43:15 2026 -0400"
      },
      "message": "Better exception message\n"
    },
    {
      "commit": "d01d773bd40b183ca08fa00c906c72420de61ca0",
      "tree": "1cada6ef8fa53235f01e73c41dfb2fbf5e8b0934",
      "parents": [
        "ee4507b969f6b7165dedd5033c3b084465eaffca"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Fri Apr 03 17:57:23 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Fri Apr 03 17:57:23 2026 -0400"
      },
      "message": "Javadoc\n"
    },
    {
      "commit": "ee4507b969f6b7165dedd5033c3b084465eaffca",
      "tree": "9bdd50ab9370c1f7a5f19c2d1e7e2d4408cfb0c9",
      "parents": [
        "49044595581fb3fb47ce5219dc1b58fd275b49e7"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Fri Apr 03 07:13:55 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Fri Apr 03 07:13:55 2026 -0400"
      },
      "message": "Add tests\n\nBetter assertion failure messages\n"
    },
    {
      "commit": "49044595581fb3fb47ce5219dc1b58fd275b49e7",
      "tree": "4fbdd510b0da4f342af7f00f0b863ccaa9f551a2",
      "parents": [
        "df37ca856a46ff256044c6f696615b9102e108b3"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Fri Apr 03 06:52:51 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Fri Apr 03 06:52:51 2026 -0400"
      },
      "message": "Run builds only on push to master and pull requests\n"
    },
    {
      "commit": "df37ca856a46ff256044c6f696615b9102e108b3",
      "tree": "931884d864650b1a5c0c62c7310e3dab21415366",
      "parents": [
        "db16fe31c19a965ee1fe124744e7f2262d9e57db"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Wed Apr 01 08:14:28 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Wed Apr 01 08:14:28 2026 -0400"
      },
      "message": "Javadoc\n"
    },
    {
      "commit": "db16fe31c19a965ee1fe124744e7f2262d9e57db",
      "tree": "dd8aa41d4110bef6a42e52ad18143897d6eb2c66",
      "parents": [
        "33831c5c47477e90dbc731ac3e13671170042dcd"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Wed Apr 01 08:11:14 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Wed Apr 01 08:11:14 2026 -0400"
      },
      "message": "Javadoc\n"
    },
    {
      "commit": "33831c5c47477e90dbc731ac3e13671170042dcd",
      "tree": "06ae34e6eaeaf410e401f932797ea49845e7fab2",
      "parents": [
        "8f15ac1afc109623d8ac0224e3d5333283aa85bc"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Wed Apr 01 07:39:49 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Wed Apr 01 07:39:49 2026 -0400"
      },
      "message": "Fix generic compiler warning"
    },
    {
      "commit": "8f15ac1afc109623d8ac0224e3d5333283aa85bc",
      "tree": "1d433c05082a7f6513363dd856306683e2d26734",
      "parents": [
        "a45261b90c114802bbfa357bb873e797cd4f9589"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Wed Apr 01 07:38:28 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Wed Apr 01 07:38:28 2026 -0400"
      },
      "message": "Migrate from deprecated code\n"
    },
    {
      "commit": "a45261b90c114802bbfa357bb873e797cd4f9589",
      "tree": "6b440aa88cdf124b9dbee1308b0d3c136aa75db0",
      "parents": [
        "6de048b3632428c85c811ecf0357a4ac64a802b6"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Wed Apr 01 07:32:43 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Wed Apr 01 07:32:43 2026 -0400"
      },
      "message": "Javadoc"
    },
    {
      "commit": "6de048b3632428c85c811ecf0357a4ac64a802b6",
      "tree": "4e31cbe29c324c7b5505fcaab3c1645068c813f0",
      "parents": [
        "cc1fc9b9755a70fd8a18cde786a819007065413a"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Wed Apr 01 07:30:35 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Wed Apr 01 07:30:35 2026 -0400"
      },
      "message": "Javadoc"
    },
    {
      "commit": "cc1fc9b9755a70fd8a18cde786a819007065413a",
      "tree": "b83426c41ab4a5be3f0d25e4e693b3bc4bc742ec",
      "parents": [
        "f16cabc5507f1d21cce9f86a39915df5fd49a094"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Wed Apr 01 07:29:46 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Wed Apr 01 07:29:46 2026 -0400"
      },
      "message": "Better local variable names\n"
    },
    {
      "commit": "f16cabc5507f1d21cce9f86a39915df5fd49a094",
      "tree": "89e32ea7a79a5a783e14b07d14da6b19edde5af1",
      "parents": [
        "396218ad0f3e3fec7f223c910177a6beee2af47d"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Wed Apr 01 07:27:00 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Wed Apr 01 07:27:00 2026 -0400"
      },
      "message": "Javadoc\n"
    },
    {
      "commit": "396218ad0f3e3fec7f223c910177a6beee2af47d",
      "tree": "62157040c8e5e79f9d72c520386c3d681986a22e",
      "parents": [
        "c1fc2a99310fbc8094a8b5b09de47ddfa8af546f"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Wed Apr 01 06:20:28 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Wed Apr 01 06:20:28 2026 -0400"
      },
      "message": "Bump actions/checkout from 6.0.1 to 6.0.2\n"
    },
    {
      "commit": "c1fc2a99310fbc8094a8b5b09de47ddfa8af546f",
      "tree": "a915f4d4d807f1c2063311c28c65abc45dea8619",
      "parents": [
        "f8b21987271744ed6db77d5ae50b99d5a954eba3"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Tue Mar 31 21:44:11 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Tue Mar 31 21:44:11 2026 -0400"
      },
      "message": "Bump github/codeql-action from 4.34.1 to 4.35.1\n"
    },
    {
      "commit": "f8b21987271744ed6db77d5ae50b99d5a954eba3",
      "tree": "b4ad9d4e4c5b0c4360be51b446f05ee6726b35d6",
      "parents": [
        "3a65a4a974f420798f5aec507988cb61bfb1d82d"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Tue Mar 31 20:41:00 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Tue Mar 31 20:41:00 2026 -0400"
      },
      "message": "Bump actions/dependency-review-action from 4.8.2 to 4.9.0\n"
    },
    {
      "commit": "3a65a4a974f420798f5aec507988cb61bfb1d82d",
      "tree": "50b13281ac841f5d920c0587b0d6fa5a6e9224b3",
      "parents": [
        "0b07ee358eeccb119186967b6d82006440e9f405"
      ],
      "author": {
        "name": "Piotr P. Karwasz",
        "email": "pkarwasz-github@apache.org",
        "time": "Mon Mar 30 19:05:34 2026 +0200"
      },
      "committer": {
        "name": "Piotr P. Karwasz",
        "email": "pkarwasz-github@apache.org",
        "time": "Mon Mar 30 19:09:16 2026 +0200"
      },
      "message": "fix: add support for symlinks in `DigestUtils.gitBlob()`\n"
    },
    {
      "commit": "0b07ee358eeccb119186967b6d82006440e9f405",
      "tree": "9865d078cf05e7bf46eacdae10bd04740a279eda",
      "parents": [
        "f9018bd6ef446bdcdd23558e62ac0d24f5354053"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Mon Mar 30 07:41:50 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Mon Mar 30 07:41:50 2026 -0400"
      },
      "message": "Javadoc\n"
    },
    {
      "commit": "f9018bd6ef446bdcdd23558e62ac0d24f5354053",
      "tree": "de35c89f4797023d015d1ae5150607fc7c6e4258",
      "parents": [
        "d4cade3dd89ca7ac3d7e96fa181928feb730d938"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Mon Mar 30 07:40:47 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Mon Mar 30 07:40:47 2026 -0400"
      },
      "message": "Internal refactoring\n"
    },
    {
      "commit": "d4cade3dd89ca7ac3d7e96fa181928feb730d938",
      "tree": "20ab7116099221f3c8b585dce23d3a7a54651cf6",
      "parents": [
        "0ea889ff61be208c4c0dd495c47fd6b7e71333ac"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Mon Mar 30 07:35:00 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Mon Mar 30 07:35:00 2026 -0400"
      },
      "message": "Add missing test\n"
    },
    {
      "commit": "0ea889ff61be208c4c0dd495c47fd6b7e71333ac",
      "tree": "935acd8c5a24a80323081e303f4da80552ceb15c",
      "parents": [
        "4ece9757a99e7dfdca04fa068e97eb23dd3cc434"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Mon Mar 30 07:29:05 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Mon Mar 30 07:29:05 2026 -0400"
      },
      "message": "Push down null check in constructor\n\nJavadoc\n"
    },
    {
      "commit": "4ece9757a99e7dfdca04fa068e97eb23dd3cc434",
      "tree": "55e908b81225dc1eb3657b6f6a106ecad79572ca",
      "parents": [
        "14f128d6dd12d476d78dcc856fe38ec081d51754"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Mon Mar 30 07:15:54 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Mon Mar 30 07:15:54 2026 -0400"
      },
      "message": "Bump Bump actions/cache from 5.0.3 to 5.0.4\n"
    },
    {
      "commit": "14f128d6dd12d476d78dcc856fe38ec081d51754",
      "tree": "6e516b08ed49d187fa5f01c8c1d0c9d609248b79",
      "parents": [
        "f2ca966b506a17ef6c95c85a57c75a73f09df09e"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Mon Mar 30 06:51:53 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Mon Mar 30 06:51:53 2026 -0400"
      },
      "message": "Use final\n"
    },
    {
      "commit": "f2ca966b506a17ef6c95c85a57c75a73f09df09e",
      "tree": "eb2a82ca93a4fe0928f3e2b46c295c103b62805c",
      "parents": [
        "3019feb5fda4f40d2f5055f55a9e94d74eb0367b"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Mon Mar 30 06:48:58 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Mon Mar 30 06:48:58 2026 -0400"
      },
      "message": "Sort members\n"
    },
    {
      "commit": "3019feb5fda4f40d2f5055f55a9e94d74eb0367b",
      "tree": "ecf43ba3f39302548a1b50d587272a6a9a002cb3",
      "parents": [
        "0646e8c39d0b4bad38d75ad49ded48cf5921afb6"
      ],
      "author": {
        "name": "Piotr P. Karwasz",
        "email": "pkarwasz-github@apache.org",
        "time": "Sun Mar 29 20:15:50 2026 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Mar 29 20:15:50 2026 +0200"
      },
      "message": "CODEC-335: Add `DigestUtils.gitBlob` and `DigestUtils.gitTree` methods (#427)\n\nThis change adds two methods to `DigestUtils` that compute generalized Git object\nidentifiers using an arbitrary `MessageDigest`, rather than being restricted to SHA-1:\n\n- `gitBlob(digest, input)`: computes a generalized\n  [Git blob object identifier](https://git-scm.com/book/en/v2/Git-Internals-Git-Objects) for a given file or byte content.\n- `gitTree(digest, file)`: computes a generalized\n  [Git tree object identifier](https://git-scm.com/book/en/v2/Git-Internals-Git-Objects) for a given directory.\n\n### Motivation\n\nThe standard Git object identifiers use SHA-1, which is\n[in the process of being replaced by SHA-256](https://git-scm.com/docs/hash-function-transition) in Git itself.\nThese methods generalize the identifier computation to support any `MessageDigest`,\nenabling both forward compatibility and use with external standards.\n\nIn particular, the `swh:1:cnt:` (content) and `swh:1:dir:` (directory) identifier\ntypes defined by [SWHID (ISO/IEC 18670)](https://www.swhid.org/specification/v1.2/5.Core_identifiers/) are currently compatible with\nGit blob and tree identifiers respectively (using SHA-1), and can be used to generate\ncanonical, persistent identifiers for unpacked source and binary distributions."
    },
    {
      "commit": "0646e8c39d0b4bad38d75ad49ded48cf5921afb6",
      "tree": "94804740965043ecfa304d8560800c10fcce9b67",
      "parents": [
        "a14cd2a9f5b2a60139a6aac398fe63ecf33cc933"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Fri Mar 27 14:48:47 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Fri Mar 27 14:48:47 2026 -0400"
      },
      "message": "Bump github/codeql-action from 4.34.0 to 4.34.1\n"
    },
    {
      "commit": "a14cd2a9f5b2a60139a6aac398fe63ecf33cc933",
      "tree": "92eb1dcae4bdab14f1e8a650fd325d97502a6826",
      "parents": [
        "3315fb49d39466fc05bc12c3c4b692937063b706"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Thu Mar 26 19:37:42 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Thu Mar 26 19:37:42 2026 -0400"
      },
      "message": "Revert"
    },
    {
      "commit": "3315fb49d39466fc05bc12c3c4b692937063b706",
      "tree": "c8c5b4ecd1de11688cd8b0a279dee50f29ab1850",
      "parents": [
        "ca52f570255b2e1f4fd6faeb198799169870fb6d"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Thu Mar 26 19:35:11 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Thu Mar 26 19:35:11 2026 -0400"
      },
      "message": "BOMInputStream fail-fast and tracks its ByteOrderMark as a final\n"
    },
    {
      "commit": "ca52f570255b2e1f4fd6faeb198799169870fb6d",
      "tree": "92eb1dcae4bdab14f1e8a650fd325d97502a6826",
      "parents": [
        "f3b0eb5499266e99170bcc674c93d8a69790fc8b"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Thu Mar 26 17:23:47 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Thu Mar 26 17:23:47 2026 -0400"
      },
      "message": "[CODEC-336] Base64.Builder.setUrlSafe() Javadoc incorrectly states null\nis accepted for primitive boolean parameter\n"
    },
    {
      "commit": "f3b0eb5499266e99170bcc674c93d8a69790fc8b",
      "tree": "2bc97b3c03d15577c5ada5f4097440e358c92758",
      "parents": [
        "537e3139742c8760f95e4e8ce50d32abe58309eb"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sun Mar 22 22:22:10 2026 -0700"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Sun Mar 22 22:22:10 2026 -0700"
      },
      "message": "Javadoc\n"
    },
    {
      "commit": "537e3139742c8760f95e4e8ce50d32abe58309eb",
      "tree": "c3d323d96c2a4ec63cba76b7af4fa2907f201f6b",
      "parents": [
        "a0b3c0a096465b39b3a4010c8cdf151d747578ec"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Fri Mar 20 17:31:41 2026 -0700"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Fri Mar 20 17:31:41 2026 -0700"
      },
      "message": "Bump github/codeql-action from 4.32.6 to 4.34.0\n"
    },
    {
      "commit": "a0b3c0a096465b39b3a4010c8cdf151d747578ec",
      "tree": "145ed649323d3cfcaebef103e8d040ac6095a29a",
      "parents": [
        "88f56b14a8900191a86b463fe62723f37552a6f3"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Thu Mar 19 23:46:28 2026 +0000"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Thu Mar 19 23:46:28 2026 +0000"
      },
      "message": "Add a reference to safe deserlialization\n"
    },
    {
      "commit": "88f56b14a8900191a86b463fe62723f37552a6f3",
      "tree": "90e42e52ab961cfc038f22573f42dead87fb7a54",
      "parents": [
        "f55056104a73b19f978a67cebdffaac1f7320b6c"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Fri Mar 13 15:13:57 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Fri Mar 13 15:13:57 2026 -0400"
      },
      "message": "Comment\n"
    },
    {
      "commit": "f55056104a73b19f978a67cebdffaac1f7320b6c",
      "tree": "1c591520ab25113f17f595a689a8a6bc95b8a14f",
      "parents": [
        "19b3c4ca327ee4f058de41ecaf61adb2365a4513"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Thu Mar 12 07:48:21 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Thu Mar 12 07:48:21 2026 -0400"
      },
      "message": "[CODEC-334] Add tests in Base64OutputStreamTest\n"
    },
    {
      "commit": "19b3c4ca327ee4f058de41ecaf61adb2365a4513",
      "tree": "e0e9e5d6b210755fbe98c14a27de9528ea8efa11",
      "parents": [
        "69928bc25b3d93c09c9ae12f31a88c5addd8c8e5"
      ],
      "author": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Mon Mar 09 08:43:33 2026 -0400"
      },
      "committer": {
        "name": "Gary Gregory",
        "email": "garydgregory@gmail.com",
        "time": "Mon Mar 09 08:43:33 2026 -0400"
      },
      "message": "Bump actions/upload-artifact from 6.0.0 to 7.0.0\n"
    }
  ],
  "next": "69928bc25b3d93c09c9ae12f31a88c5addd8c8e5"
}
